langfuse_client_base/models/
unstable_create_code_evaluation_rule_request.rs1use crate::models;
12use serde::{Deserialize, Serialize};
13
14#[derive(Clone, Default, Debug, PartialEq, Serialize, Deserialize, bon::Builder)]
15pub struct UnstableCreateCodeEvaluationRuleRequest {
16 #[serde(rename = "name")]
18 pub name: String,
19 #[serde(rename = "evaluator")]
20 pub evaluator: Box<models::UnstableCodeEvaluationRuleEvaluatorReference>,
21 #[serde(rename = "target")]
22 pub target: models::UnstableEvaluationRuleTarget,
23 #[serde(rename = "enabled")]
25 pub enabled: bool,
26 #[serde(
28 rename = "sampling",
29 default,
30 with = "::serde_with::rust::double_option",
31 skip_serializing_if = "Option::is_none"
32 )]
33 pub sampling: Option<Option<f64>>,
34 #[serde(
36 rename = "filter",
37 default,
38 with = "::serde_with::rust::double_option",
39 skip_serializing_if = "Option::is_none"
40 )]
41 pub filter: Option<Option<Vec<models::UnstableEvaluationRuleFilter>>>,
42}
43
44impl UnstableCreateCodeEvaluationRuleRequest {
45 pub fn new(
46 name: String,
47 evaluator: models::UnstableCodeEvaluationRuleEvaluatorReference,
48 target: models::UnstableEvaluationRuleTarget,
49 enabled: bool,
50 ) -> UnstableCreateCodeEvaluationRuleRequest {
51 UnstableCreateCodeEvaluationRuleRequest {
52 name,
53 evaluator: Box::new(evaluator),
54 target,
55 enabled,
56 sampling: None,
57 filter: None,
58 }
59 }
60}