pub struct ResolvedPlaybook {
pub playbook_id: String,
pub target_class: TargetClass,
pub acquisition: ResolvedAcquisition,
pub proxy_preference: ProxyPreference,
pub proxy_preference_source: ResolutionSource,
pub pacing: PacingProfile,
pub pacing_source: ResolutionSource,
pub escalation: EscalationStrategy,
pub escalation_source: ResolutionSource,
}Expand description
Full resolution result.
Fields§
§playbook_id: StringId of the matched playbook (or "unknown" when the resolver
fell through to the global default).
target_class: TargetClassTarget class supplied to the resolver.
acquisition: ResolvedAcquisitionResolved acquisition block.
proxy_preference: ProxyPreferenceResolved proxy preference.
proxy_preference_source: ResolutionSourceWhich tier contributed the proxy preference.
pacing: PacingProfileResolved pacing profile.
pacing_source: ResolutionSourceWhich tier contributed the pacing profile.
escalation: EscalationStrategyResolved escalation strategy.
escalation_source: ResolutionSourceWhich tier contributed the escalation strategy.
Implementations§
Source§impl ResolvedPlaybook
impl ResolvedPlaybook
Sourcepub const fn to_runtime_policy_hints(&self) -> RuntimePolicyHints
pub const fn to_runtime_policy_hints(&self) -> RuntimePolicyHints
Map the resolved acquisition block to a
crate::acquisition::RuntimePolicyHints ready for
crate::acquisition::map_policy_hints.
§Example
use stygian_charon::playbooks::PlaybookResolver;
use stygian_charon::types::TargetClass;
let resolver = PlaybookResolver::with_builtin_defaults();
let resolved = resolver
.resolve(TargetClass::ContentSite, "tier1-js", &Default::default())
.expect("resolve");
let _hints = resolved.to_runtime_policy_hints();Sourcepub fn to_acquisition_policy(&self) -> AcquisitionPolicy
pub fn to_acquisition_policy(&self) -> AcquisitionPolicy
Convenience: render the resolution result into a
crate::acquisition::AcquisitionPolicy via the standard
map_policy_hints path.
§Example
use stygian_charon::playbooks::PlaybookResolver;
use stygian_charon::types::TargetClass;
let resolver = PlaybookResolver::with_builtin_defaults();
let resolved = resolver
.resolve(TargetClass::ContentSite, "tier1-js", &Default::default())
.expect("resolve");
let _policy = resolved.to_acquisition_policy();Trait Implementations§
Source§impl Clone for ResolvedPlaybook
impl Clone for ResolvedPlaybook
Source§fn clone(&self) -> ResolvedPlaybook
fn clone(&self) -> ResolvedPlaybook
Returns a duplicate of the value. Read more
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreSource§impl Debug for ResolvedPlaybook
impl Debug for ResolvedPlaybook
Source§impl<'de> Deserialize<'de> for ResolvedPlaybook
impl<'de> Deserialize<'de> for ResolvedPlaybook
Source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read more
Source§impl PartialEq for ResolvedPlaybook
impl PartialEq for ResolvedPlaybook
Source§impl Serialize for ResolvedPlaybook
impl Serialize for ResolvedPlaybook
impl StructuralPartialEq for ResolvedPlaybook
Auto Trait Implementations§
impl Freeze for ResolvedPlaybook
impl RefUnwindSafe for ResolvedPlaybook
impl Send for ResolvedPlaybook
impl Sync for ResolvedPlaybook
impl Unpin for ResolvedPlaybook
impl UnsafeUnpin for ResolvedPlaybook
impl UnwindSafe for ResolvedPlaybook
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more