Skip to main content

ucp_graph/
query.rs

1use serde::{Deserialize, Serialize};
2
3#[derive(Debug, Clone, Copy, PartialEq, Eq, Serialize, Deserialize)]
4#[serde(rename_all = "snake_case")]
5pub enum GraphNeighborMode {
6    Children,
7    Parents,
8    Outgoing,
9    Incoming,
10    Neighborhood,
11}
12
13#[derive(Debug, Clone, Default, Serialize, Deserialize)]
14pub struct GraphFindQuery {
15    #[serde(default, skip_serializing_if = "Option::is_none")]
16    pub label_regex: Option<String>,
17    #[serde(default, skip_serializing_if = "Option::is_none")]
18    pub content_type: Option<String>,
19    #[serde(default, skip_serializing_if = "Option::is_none")]
20    pub semantic_role_regex: Option<String>,
21    #[serde(default, skip_serializing_if = "Option::is_none")]
22    pub tag_regex: Option<String>,
23    #[serde(default)]
24    pub case_sensitive: bool,
25    #[serde(default, skip_serializing_if = "Option::is_none")]
26    pub limit: Option<usize>,
27}