1use crate::clause::{Fact, Rule};
3use crate::directive::Directive;
4use crate::query::Query;
5
6#[derive(Debug, Clone, PartialEq, serde::Serialize, serde::Deserialize)]
8#[allow(missing_docs)]
9pub enum PlainClause {
10 Fact(Fact),
11 Rule(Rule),
12}
13
14#[derive(Debug, Clone, PartialEq, serde::Serialize, serde::Deserialize)]
16pub struct Probabilistic {
17 pub probability: f64,
19 pub clause: PlainClause,
21}
22
23#[derive(Debug, Clone, PartialEq, serde::Serialize, serde::Deserialize)]
25#[allow(missing_docs)]
26pub enum Item {
27 Fact(Fact),
28 Rule(Rule),
29 Query(Query),
30 Directive(Directive),
31 Probabilistic(Probabilistic),
32}