shex_ast/ast/
node_kind.rs

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
use std::fmt::{Display, Formatter};

use serde_derive::{Deserialize, Serialize};

#[derive(Deserialize, Serialize, Debug, PartialEq, Clone)]
#[serde(rename_all = "lowercase")]
pub enum NodeKind {
    Iri,
    BNode,
    NonLiteral,
    Literal,
}

impl Display for NodeKind {
    fn fmt(&self, f: &mut Formatter<'_>) -> std::fmt::Result {
        match self {
            NodeKind::Iri => write!(f, "IRI"),
            NodeKind::BNode => write!(f, "BNode"),
            NodeKind::NonLiteral => write!(f, "NonLiteral"),
            NodeKind::Literal => write!(f, "Literal"),
        }
    }
}