about summary refs log tree commit diff
path: root/indieauth/src/scopes.rs
diff options
context:
space:
mode:
authorVika <vika@fireburn.ru>2025-04-16 02:25:41 +0300
committerVika <vika@fireburn.ru>2025-04-16 02:25:41 +0300
commitf21205362058d65d1372c0357e8cf60bf2a07e27 (patch)
tree23a88136a3cd3eded0ce8243fc7506f8d68393f2 /indieauth/src/scopes.rs
parent440104596aef4826a960f2fb8dae366b802014b1 (diff)
downloadkittybox-f21205362058d65d1372c0357e8cf60bf2a07e27.tar.zst
kittybox-indieauth: 0.3.0 → 0.3.1
`Scopes` now includes `len()` and `is_empty()` to check if an
application didn't request any scopes.

Change-Id: I7c9c0366131445b11374cf6e66ebbc3a9ba27e0b
Diffstat (limited to 'indieauth/src/scopes.rs')
-rw-r--r--indieauth/src/scopes.rs13
1 files changed, 13 insertions, 0 deletions
diff --git a/indieauth/src/scopes.rs b/indieauth/src/scopes.rs
index 295b0c8..7333b5b 100644
--- a/indieauth/src/scopes.rs
+++ b/indieauth/src/scopes.rs
@@ -111,6 +111,19 @@ impl Scopes {
     pub fn iter(&self) -> std::slice::Iter<'_, Scope> {
         self.0.iter()
     }
+
+    /// Count scopes requested by the application.
+    pub fn len(&self) -> usize {
+        self.0.len()
+    }
+
+    /// See if the application requested any scopes.
+    ///
+    /// Some older applications forget to request scopes. This may be used to force a default scope.
+    #[must_use]
+    pub fn is_empty(&self) -> bool {
+        self.len() == 0
+    }
 }
 impl AsRef<[Scope]> for Scopes {
     fn as_ref(&self) -> &[Scope] {