pub enum DecisionQuestion {
Noul {
instructions: Value,
criteria: NoulCriteria,
},
Choice {
instructions: Value,
criteria: BTreeMap<String, Option<String>>,
},
Score {
instructions: Value,
criteria: Vec<String>,
},
}Expand description
A single typed question in a DecisionRequest.
The three variants mirror the System One question types. instructions is a
free-form Value (string, object, or array) describing what to evaluate.
§Examples
use ironflow_core::decision::DecisionQuestion;
use serde_json::json;
let q = DecisionQuestion::Score {
instructions: json!("How frustrated is the customer?"),
criteria: vec!["Calm".into(), "Frustrated".into(), "Very angry".into()],
};
let wire = serde_json::to_value(&q).unwrap();
assert_eq!(wire["type"], "score");Variants§
Noul
A yes/no question. The answer is the probability that the answer is “yes”.
Fields
§
criteria: NoulCriteriaOptional descriptions of the true/false sides.
Choice
A selection among named options. criteria maps each option to an
optional description.
Fields
Score
A rating against ordered, descriptive levels (index 0..N-1).
Trait Implementations§
Source§impl Clone for DecisionQuestion
impl Clone for DecisionQuestion
Source§impl Debug for DecisionQuestion
impl Debug for DecisionQuestion
Source§impl<'de> Deserialize<'de> for DecisionQuestion
impl<'de> Deserialize<'de> for DecisionQuestion
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 DecisionQuestion
impl PartialEq for DecisionQuestion
Source§impl Serialize for DecisionQuestion
impl Serialize for DecisionQuestion
impl StructuralPartialEq for DecisionQuestion
Auto Trait Implementations§
impl Freeze for DecisionQuestion
impl RefUnwindSafe for DecisionQuestion
impl Send for DecisionQuestion
impl Sync for DecisionQuestion
impl Unpin for DecisionQuestion
impl UnsafeUnpin for DecisionQuestion
impl UnwindSafe for DecisionQuestion
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