pub struct ResolveCheckRequest {Show 13 fields
pub object_type: String,
pub object_id: String,
pub relation: String,
pub subject_type: String,
pub subject_id: String,
pub contextual_tuples: Vec<Tuple>,
pub depth_remaining: u32,
pub consistency: Consistency,
pub metadata: ResolverMetadata,
pub recursion_config: RecursionConfig,
pub visited: Vec<(String, String, String)>,
pub context: HashMap<String, Value>,
pub at_revision: String,
}Expand description
Request to resolve a check.
Fields§
§object_type: String§object_id: String§relation: String§subject_type: String§subject_id: String§contextual_tuples: Vec<Tuple>§depth_remaining: u32§consistency: Consistency§metadata: ResolverMetadata§recursion_config: RecursionConfig§visited: Vec<(String, String, String)>Track visited (object_type, object_id, relation) tuples for cycle detection
context: HashMap<String, Value>Context values for CEL condition evaluation (key → JSON-compatible value).
at_revision: StringRevision at which this check is evaluated. Included in cache keys so that stale entries from older revisions are never served. Empty string means “latest/unknown” (cache keys still work but won’t benefit from revision-based natural expiry). This is typically a quantized ULID or timestamp.
Implementations§
Source§impl ResolveCheckRequest
impl ResolveCheckRequest
Sourcepub fn new(
object_type: String,
object_id: String,
relation: String,
subject_type: String,
subject_id: String,
) -> Self
pub fn new( object_type: String, object_id: String, relation: String, subject_type: String, subject_id: String, ) -> Self
Create a new check request with default values.
Sourcepub fn with_config(
object_type: String,
object_id: String,
relation: String,
subject_type: String,
subject_id: String,
recursion_config: RecursionConfig,
) -> Self
pub fn with_config( object_type: String, object_id: String, relation: String, subject_type: String, subject_id: String, recursion_config: RecursionConfig, ) -> Self
Create a new check request with custom recursion config.
Sourcepub fn child_request(
&self,
object_type: String,
object_id: String,
relation: String,
subject_type: String,
subject_id: String,
) -> Self
pub fn child_request( &self, object_type: String, object_id: String, relation: String, subject_type: String, subject_id: String, ) -> Self
Create a child request with decremented depth.
The child shares the same ResolverMetadata atomic counters so that
increments in recursive dispatches are visible to the top-level caller.
Trait Implementations§
Source§impl Clone for ResolveCheckRequest
impl Clone for ResolveCheckRequest
Source§fn clone(&self) -> ResolveCheckRequest
fn clone(&self) -> ResolveCheckRequest
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreAuto Trait Implementations§
impl Freeze for ResolveCheckRequest
impl RefUnwindSafe for ResolveCheckRequest
impl Send for ResolveCheckRequest
impl Sync for ResolveCheckRequest
impl Unpin for ResolveCheckRequest
impl UnsafeUnpin for ResolveCheckRequest
impl UnwindSafe for ResolveCheckRequest
Blanket Implementations§
Source§impl<T> AnyExt for T
impl<T> AnyExt for T
Source§fn downcast_ref<T>(this: &Self) -> Option<&T>where
T: Any,
fn downcast_ref<T>(this: &Self) -> Option<&T>where
T: Any,
T behind referenceSource§fn downcast_mut<T>(this: &mut Self) -> Option<&mut T>where
T: Any,
fn downcast_mut<T>(this: &mut Self) -> Option<&mut T>where
T: Any,
T behind mutable referenceSource§fn downcast_rc<T>(this: Rc<Self>) -> Result<Rc<T>, Rc<Self>>where
T: Any,
fn downcast_rc<T>(this: Rc<Self>) -> Result<Rc<T>, Rc<Self>>where
T: Any,
T behind Rc pointerSource§fn downcast_arc<T>(this: Arc<Self>) -> Result<Arc<T>, Arc<Self>>where
T: Any,
fn downcast_arc<T>(this: Arc<Self>) -> Result<Arc<T>, Arc<Self>>where
T: Any,
T behind Arc pointer