shex_ast/ast/
node_kind.rs1use std::fmt::{Display, Formatter};
2
3use serde::{Deserialize, Serialize};
4
5#[derive(Deserialize, Serialize, Debug, PartialEq, Clone)]
6#[serde(rename_all = "lowercase")]
7pub enum NodeKind {
8 Iri,
9 BNode,
10 NonLiteral,
11 Literal,
12}
13
14impl Display for NodeKind {
15 fn fmt(&self, f: &mut Formatter<'_>) -> std::fmt::Result {
16 match self {
17 NodeKind::Iri => write!(f, "IRI"),
18 NodeKind::BNode => write!(f, "BNode"),
19 NodeKind::NonLiteral => write!(f, "NonLiteral"),
20 NodeKind::Literal => write!(f, "Literal"),
21 }
22 }
23}