libcypher-parser-0.6.0
|
#include <stdlib.h>
#include <stdint.h>
#include <stdarg.h>
#include <stdbool.h>
#include <stdio.h>
#include <string.h>
#include <sys/types.h>
#include <sys/uio.h>
Data Structures | |
struct | cypher_input_position |
A position in the input. More... | |
struct | cypher_input_range |
A range in the input. More... | |
Typedefs | |
typedef struct cypher_astnode | cypher_astnode_t |
An abstract syntax tree node. | |
typedef uint8_t | cypher_astnode_type_t |
A cypher AST node type. | |
typedef struct cypher_operator | cypher_operator_t |
A cypher expression operator. | |
typedef struct cypher_parser_config | cypher_parser_config_t |
Configuration for a cypher parser. | |
typedef struct cypher_parse_segment | cypher_parse_segment_t |
A parse segment. | |
typedef struct cypher_parse_result | cypher_parse_result_t |
A parse result. | |
typedef struct cypher_parse_error | cypher_parse_error_t |
A parse error. | |
typedef int(* | cypher_parser_segment_callback_t) (void *userdata, cypher_parse_segment_t *segment) |
A parse callback. | |
typedef struct cypher_quick_parse_segment | cypher_quick_parse_segment_t |
A quick parse segment. | |
typedef int(* | cypher_parser_quick_segment_callback_t) (void *userdata, const cypher_quick_parse_segment_t *segment) |
A quick parse callback. | |
Enumerations | |
enum | cypher_rel_direction |
The direction of a relationship pattern. | |
Functions | |
const char * | libcypher_parser_version (void) |
The version string for libcypher-parser. | |
cypher_astnode_type_t | cypher_astnode_type (const cypher_astnode_t *node) |
Get the type of an AST node. More... | |
bool | cypher_astnode_instanceof (const cypher_astnode_t *node, cypher_astnode_type_t type) |
Check the type of an AST node. More... | |
const char * | cypher_astnode_typestr (cypher_astnode_type_t type) |
Get a string description of the AST node type. More... | |
unsigned int | cypher_astnode_nchildren (const cypher_astnode_t *node) |
Get the number of children from an AST node. More... | |
const cypher_astnode_t * | cypher_astnode_get_child (const cypher_astnode_t *node, unsigned int index) |
Get a child from an AST node. More... | |
struct cypher_input_range | cypher_astnode_range (const cypher_astnode_t *node) |
Get the range of an AST node in the input. More... | |
cypher_astnode_t * | cypher_ast_statement (cypher_astnode_t *const *options, unsigned int noptions, const cypher_astnode_t *body, cypher_astnode_t **children, unsigned int nchildren, struct cypher_input_range range) |
Construct a CYPHER_AST_STATEMENT node. More... | |
unsigned int | cypher_ast_statement_noptions (const cypher_astnode_t *node) |
Get the number of options in a CYPHER_AST_STATEMENT node. More... | |
const cypher_astnode_t * | cypher_ast_statement_get_option (const cypher_astnode_t *node, unsigned int index) |
Get an option of a CYPHER_AST_STATEMENT node. More... | |
const cypher_astnode_t * | cypher_ast_statement_get_body (const cypher_astnode_t *node) |
Get the body of a CYPHER_AST_STATEMENT node. More... | |
cypher_astnode_t * | cypher_ast_cypher_option (const cypher_astnode_t *version, cypher_astnode_t *const *params, unsigned int nparams, cypher_astnode_t **children, unsigned int nchildren, struct cypher_input_range range) |
Construct a CYPHER_AST_CYPHER_OPTION node. More... | |
const cypher_astnode_t * | cypher_ast_cypher_option_get_version (const cypher_astnode_t *node) |
Get the version of a CYPHER_AST_CYPHER_OPTION node. More... | |
unsigned int | cypher_ast_cypher_option_nparams (const cypher_astnode_t *node) |
Get the number of parameters in a CYPHER_AST_CYPHER_OPTION node. More... | |
const cypher_astnode_t * | cypher_ast_cypher_option_get_param (const cypher_astnode_t *node, unsigned int index) |
Get an option of a CYPHER_AST_CYPHER_OPTION node. More... | |
cypher_astnode_t * | cypher_ast_cypher_option_param (const cypher_astnode_t *name, const cypher_astnode_t *value, cypher_astnode_t **children, unsigned int nchildren, struct cypher_input_range range) |
Construct a CYPHER_AST_CYPHER_OPTION_PARAM node. More... | |
const cypher_astnode_t * | cypher_ast_cypher_option_param_get_name (const cypher_astnode_t *node) |
Get an name of a CYPHER_AST_CYPHER_OPTION_PARAM node. More... | |
const cypher_astnode_t * | cypher_ast_cypher_option_param_get_value (const cypher_astnode_t *node) |
Get an value of a CYPHER_AST_CYPHER_OPTION_PARAM node. More... | |
cypher_astnode_t * | cypher_ast_explain_option (cypher_astnode_t **children, unsigned int nchildren, struct cypher_input_range range) |
Construct a CYPHER_AST_EXPLAIN_OPTION node. More... | |
cypher_astnode_t * | cypher_ast_profile_option (cypher_astnode_t **children, unsigned int nchildren, struct cypher_input_range range) |
Construct a CYPHER_AST_PROFILE_OPTION node. More... | |
cypher_astnode_t * | cypher_ast_create_node_prop_index (const cypher_astnode_t *label, const cypher_astnode_t *prop_name, cypher_astnode_t **children, unsigned int nchildren, struct cypher_input_range range) |
Construct a CYPHER_AST_CREATE_NODE_PROP_INDEX node. More... | |
const cypher_astnode_t * | cypher_ast_create_node_prop_index_get_label (const cypher_astnode_t *node) |
Get the label of a CYPHER_AST_CREATE_NODE_PROP_INDEX node. More... | |
const cypher_astnode_t * | cypher_ast_create_node_prop_index_get_prop_name (const cypher_astnode_t *node) |
Get the property name of a CYPHER_AST_CREATE_NODE_PROP_INDEX node. More... | |
cypher_astnode_t * | cypher_ast_drop_node_prop_index (const cypher_astnode_t *label, const cypher_astnode_t *prop_name, cypher_astnode_t **children, unsigned int nchildren, struct cypher_input_range range) |
Construct a CYPHER_AST_DROP_NODE_PROP_INDEX node. More... | |
const cypher_astnode_t * | cypher_ast_drop_node_prop_index_get_label (const cypher_astnode_t *node) |
Get the label of a CYPHER_AST_DROP_NODE_PROP_INDEX node. More... | |
const cypher_astnode_t * | cypher_ast_drop_node_prop_index_get_prop_name (const cypher_astnode_t *node) |
Get the property name of a CYPHER_AST_DROP_NODE_PROP_INDEX node. More... | |
cypher_astnode_t * | cypher_ast_create_node_prop_constraint (const cypher_astnode_t *identifier, const cypher_astnode_t *label, const cypher_astnode_t *expression, bool unique, cypher_astnode_t **children, unsigned int nchildren, struct cypher_input_range range) |
Construct a CYPHER_AST_CREATE_NODE_PROP_CONSTRAINT node. More... | |
const cypher_astnode_t * | cypher_ast_create_node_prop_constraint_get_identifier (const cypher_astnode_t *node) |
Get the identifier of a CYPHER_AST_CREATE_NODE_PROP_CONSTRAINT node. More... | |
const cypher_astnode_t * | cypher_ast_create_node_prop_constraint_get_label (const cypher_astnode_t *node) |
Get the label of a CYPHER_AST_CREATE_NODE_PROP_CONSTRAINT node. More... | |
const cypher_astnode_t * | cypher_ast_create_node_prop_constraint_get_expression (const cypher_astnode_t *node) |
Get the expression of a CYPHER_AST_CREATE_NODE_PROP_CONSTRAINT node. More... | |
bool | cypher_ast_create_node_prop_constraint_is_unique (const cypher_astnode_t *node) |
Check if the constraint of a CYPHER_AST_CREATE_NODE_PROP_CONSTRAINT node is unique. More... | |
cypher_astnode_t * | cypher_ast_drop_node_prop_constraint (const cypher_astnode_t *identifier, const cypher_astnode_t *label, const cypher_astnode_t *expression, bool unique, cypher_astnode_t **children, unsigned int nchildren, struct cypher_input_range range) |
Construct a CYPHER_AST_DROP_NODE_PROP_CONSTRAINT node. More... | |
const cypher_astnode_t * | cypher_ast_drop_node_prop_constraint_get_identifier (const cypher_astnode_t *node) |
Get the identifier of a CYPHER_AST_DROP_NODE_PROP_CONSTRAINT node. More... | |
const cypher_astnode_t * | cypher_ast_drop_node_prop_constraint_get_label (const cypher_astnode_t *node) |
Get the label of a CYPHER_AST_DROP_NODE_PROP_CONSTRAINT node. More... | |
const cypher_astnode_t * | cypher_ast_drop_node_prop_constraint_get_expression (const cypher_astnode_t *node) |
Get the expression of a CYPHER_AST_DROP_NODE_PROP_CONSTRAINT node. More... | |
bool | cypher_ast_drop_node_prop_constraint_is_unique (const cypher_astnode_t *node) |
Check if the constraint of a CYPHER_AST_DROP_NODE_PROP_CONSTRAINT node is unique. More... | |
cypher_astnode_t * | cypher_ast_create_rel_prop_constraint (const cypher_astnode_t *identifier, const cypher_astnode_t *label, const cypher_astnode_t *expression, bool unique, cypher_astnode_t **children, unsigned int nchildren, struct cypher_input_range range) |
Construct a CYPHER_AST_CREATE_REL_PROP_CONSTRAINT node. More... | |
const cypher_astnode_t * | cypher_ast_create_rel_prop_constraint_get_identifier (const cypher_astnode_t *node) |
Get the identifier of a CYPHER_AST_CREATE_REL_PROP_CONSTRAINT node. More... | |
const cypher_astnode_t * | cypher_ast_create_rel_prop_constraint_get_reltype (const cypher_astnode_t *node) |
Get the relationship type of a CYPHER_AST_CREATE_REL_PROP_CONSTRAINT node. More... | |
const cypher_astnode_t * | cypher_ast_create_rel_prop_constraint_get_expression (const cypher_astnode_t *node) |
Get the expression of a CYPHER_AST_CREATE_REL_PROP_CONSTRAINT node. More... | |
bool | cypher_ast_create_rel_prop_constraint_is_unique (const cypher_astnode_t *node) |
Check if the constraint of a CYPHER_AST_CREATE_REL_PROP_CONSTRAINT node is unique. More... | |
cypher_astnode_t * | cypher_ast_drop_rel_prop_constraint (const cypher_astnode_t *identifier, const cypher_astnode_t *label, const cypher_astnode_t *expression, bool unique, cypher_astnode_t **children, unsigned int nchildren, struct cypher_input_range range) |
Construct a CYPHER_AST_DROP_REL_PROP_CONSTRAINT node. More... | |
const cypher_astnode_t * | cypher_ast_drop_rel_prop_constraint_get_identifier (const cypher_astnode_t *node) |
Get the identifier of a CYPHER_AST_DROP_REL_PROP_CONSTRAINT node. More... | |
const cypher_astnode_t * | cypher_ast_drop_rel_prop_constraint_get_reltype (const cypher_astnode_t *node) |
Get the relationship type of a CYPHER_AST_DROP_REL_PROP_CONSTRAINT node. More... | |
const cypher_astnode_t * | cypher_ast_drop_rel_prop_constraint_get_expression (const cypher_astnode_t *node) |
Get the expression of a CYPHER_AST_DROP_REL_PROP_CONSTRAINT node. More... | |
bool | cypher_ast_drop_rel_prop_constraint_is_unique (const cypher_astnode_t *node) |
Check if the constraint of a CYPHER_AST_DROP_REL_PROP_CONSTRAINT node is unique. More... | |
cypher_astnode_t * | cypher_ast_query (cypher_astnode_t *const *options, unsigned int noptions, cypher_astnode_t *const *clauses, unsigned int nclauses, cypher_astnode_t **children, unsigned int nchildren, struct cypher_input_range range) |
Construct a CYPHER_AST_QUERY node. More... | |
unsigned int | cypher_ast_query_noptions (const cypher_astnode_t *node) |
Get the number of options in a CYPHER_AST_QUERY node. More... | |
const cypher_astnode_t * | cypher_ast_query_get_option (const cypher_astnode_t *node, unsigned int index) |
Get an option of a CYPHER_AST_QUERY node. More... | |
unsigned int | cypher_ast_query_nclauses (const cypher_astnode_t *node) |
Get the number of clauses in a CYPHER_AST_QUERY node. More... | |
const cypher_astnode_t * | cypher_ast_query_get_clause (const cypher_astnode_t *node, unsigned int index) |
Get a clause of a CYPHER_AST_QUERY node. More... | |
cypher_astnode_t * | cypher_ast_using_periodic_commit (const cypher_astnode_t *limit, cypher_astnode_t **children, unsigned int nchildren, struct cypher_input_range range) |
Construct a CYPHER_AST_USING_PERIODIC_COMMIT node. More... | |
const cypher_astnode_t * | cypher_ast_using_periodic_commit_get_limit (const cypher_astnode_t *node) |
Get the limit of a CYPHER_AST_USING_PERIODIC_COMMIT node. More... | |
cypher_astnode_t * | cypher_ast_load_csv (bool with_headers, const cypher_astnode_t *url, const cypher_astnode_t *identifier, const cypher_astnode_t *field_terminator, cypher_astnode_t **children, unsigned int nchildren, struct cypher_input_range range) |
Construct a CYPHER_AST_LOAD_CSV node. More... | |
bool | cypher_ast_load_csv_has_with_headers (const cypher_astnode_t *node) |
Check the with_headers value of a CYPHER_AST_LOAD_CSV node. More... | |
const cypher_astnode_t * | cypher_ast_load_csv_get_url (const cypher_astnode_t *node) |
Get the url of a CYPHER_AST_LOAD_CSV node. More... | |
const cypher_astnode_t * | cypher_ast_load_csv_get_identifier (const cypher_astnode_t *node) |
Get the identifier of a CYPHER_AST_LOAD_CSV node. More... | |
const cypher_astnode_t * | cypher_ast_load_csv_get_field_terminator (const cypher_astnode_t *node) |
Get the field terminator of a CYPHER_AST_LOAD_CSV node. More... | |
cypher_astnode_t * | cypher_ast_start (cypher_astnode_t *const *points, unsigned int npoints, const cypher_astnode_t *predicate, cypher_astnode_t **children, unsigned int nchildren, struct cypher_input_range range) |
Construct a CYPHER_AST_START node. More... | |
unsigned int | cypher_ast_start_npoints (const cypher_astnode_t *node) |
Get the number of start points in a CYPHER_AST_START node. More... | |
const cypher_astnode_t * | cypher_ast_start_get_point (const cypher_astnode_t *node, unsigned int index) |
Get a start point of a CYPHER_AST_START node. More... | |
const cypher_astnode_t * | cypher_ast_start_get_predicate (const cypher_astnode_t *node) |
Get the predicate of a CYPHER_AST_START node. More... | |
cypher_astnode_t * | cypher_ast_node_index_lookup (const cypher_astnode_t *identifier, const cypher_astnode_t *index_name, const cypher_astnode_t *prop_name, const cypher_astnode_t *lookup, cypher_astnode_t **children, unsigned int nchildren, struct cypher_input_range range) |
Construct a CYPHER_AST_NODE_INDEX_LOOKUP node. More... | |
const cypher_astnode_t * | cypher_ast_node_index_lookup_get_identifier (const cypher_astnode_t *node) |
Get the identifier of a CYPHER_AST_NODE_INDEX_LOOKUP node. More... | |
const cypher_astnode_t * | cypher_ast_node_index_lookup_get_index_name (const cypher_astnode_t *node) |
Get the index name of a CYPHER_AST_NODE_INDEX_LOOKUP node. More... | |
const cypher_astnode_t * | cypher_ast_node_index_lookup_get_prop_name (const cypher_astnode_t *node) |
Get the prop name of a CYPHER_AST_NODE_INDEX_LOOKUP node. More... | |
const cypher_astnode_t * | cypher_ast_node_index_lookup_get_lookup (const cypher_astnode_t *node) |
Get the lookup of a CYPHER_AST_NODE_INDEX_LOOKUP node. More... | |
cypher_astnode_t * | cypher_ast_node_index_query (const cypher_astnode_t *identifier, const cypher_astnode_t *index_name, const cypher_astnode_t *query, cypher_astnode_t **children, unsigned int nchildren, struct cypher_input_range range) |
Construct a CYPHER_AST_NODE_INDEX_QUERY node. More... | |
const cypher_astnode_t * | cypher_ast_node_index_query_get_identifier (const cypher_astnode_t *node) |
Get the identifier of a CYPHER_AST_NODE_INDEX_QUERY node. More... | |
const cypher_astnode_t * | cypher_ast_node_index_query_get_index_name (const cypher_astnode_t *node) |
Get the index name of a CYPHER_AST_NODE_INDEX_QUERY node. More... | |
const cypher_astnode_t * | cypher_ast_node_index_query_get_query (const cypher_astnode_t *node) |
Get the query of a CYPHER_AST_NODE_INDEX_QUERY node. More... | |
cypher_astnode_t * | cypher_ast_node_id_lookup (const cypher_astnode_t *identifier, cypher_astnode_t *const *ids, unsigned int nids, cypher_astnode_t **children, unsigned int nchildren, struct cypher_input_range range) |
Construct a CYPHER_AST_NODE_ID_LOOKUP node. More... | |
const cypher_astnode_t * | cypher_ast_node_id_lookup_get_identifier (const cypher_astnode_t *node) |
Get the identifier of a CYPHER_AST_NODE_ID_LOOKUP node. More... | |
unsigned int | cypher_ast_node_id_lookup_nids (const cypher_astnode_t *node) |
Get the number of ids in a CYPHER_AST_NODE_ID_LOOKUP node. More... | |
const cypher_astnode_t * | cypher_ast_node_id_lookup_get_id (const cypher_astnode_t *node, unsigned int index) |
Get an id of a CYPHER_AST_NODE_ID_LOOKUP node. More... | |
cypher_astnode_t * | cypher_ast_all_nodes_scan (const cypher_astnode_t *identifier, cypher_astnode_t **children, unsigned int nchildren, struct cypher_input_range range) |
Construct a CYPHER_AST_ALL_NODES_SCAN node. More... | |
const cypher_astnode_t * | cypher_ast_all_nodes_scan_get_identifier (const cypher_astnode_t *node) |
Get the identifier of a CYPHER_AST_ALL_NODES_SCAN node. More... | |
cypher_astnode_t * | cypher_ast_rel_index_lookup (const cypher_astnode_t *identifier, const cypher_astnode_t *index_name, const cypher_astnode_t *prop_name, const cypher_astnode_t *lookup, cypher_astnode_t **children, unsigned int nchildren, struct cypher_input_range range) |
Construct a CYPHER_AST_REL_INDEX_LOOKUP node. More... | |
const cypher_astnode_t * | cypher_ast_rel_index_lookup_get_identifier (const cypher_astnode_t *node) |
Get the identifier of a CYPHER_AST_REL_INDEX_LOOKUP node. More... | |
const cypher_astnode_t * | cypher_ast_rel_index_lookup_get_index_name (const cypher_astnode_t *node) |
Get the index name of a CYPHER_AST_REL_INDEX_LOOKUP node. More... | |
const cypher_astnode_t * | cypher_ast_rel_index_lookup_get_prop_name (const cypher_astnode_t *node) |
Get the prop name of a CYPHER_AST_REL_INDEX_LOOKUP node. More... | |
const cypher_astnode_t * | cypher_ast_rel_index_lookup_get_lookup (const cypher_astnode_t *node) |
Get the lookup of a CYPHER_AST_REL_INDEX_LOOKUP node. More... | |
cypher_astnode_t * | cypher_ast_rel_index_query (const cypher_astnode_t *identifier, const cypher_astnode_t *index_name, const cypher_astnode_t *query, cypher_astnode_t **children, unsigned int nchildren, struct cypher_input_range range) |
Construct a CYPHER_AST_REL_INDEX_QUERY node. More... | |
const cypher_astnode_t * | cypher_ast_rel_index_query_get_identifier (const cypher_astnode_t *node) |
Get the identifier of a CYPHER_AST_REL_INDEX_QUERY node. More... | |
const cypher_astnode_t * | cypher_ast_rel_index_query_get_index_name (const cypher_astnode_t *node) |
Get the index name of a CYPHER_AST_REL_INDEX_QUERY node. More... | |
const cypher_astnode_t * | cypher_ast_rel_index_query_get_query (const cypher_astnode_t *node) |
Get the query of a CYPHER_AST_REL_INDEX_QUERY node. More... | |
cypher_astnode_t * | cypher_ast_rel_id_lookup (const cypher_astnode_t *identifier, cypher_astnode_t *const *ids, unsigned int nids, cypher_astnode_t **children, unsigned int nchildren, struct cypher_input_range range) |
Construct a CYPHER_AST_REL_ID_LOOKUP node. More... | |
const cypher_astnode_t * | cypher_ast_rel_id_lookup_get_identifier (const cypher_astnode_t *node) |
Get the identifier of a CYPHER_AST_REL_ID_LOOKUP node. More... | |
unsigned int | cypher_ast_rel_id_lookup_nids (const cypher_astnode_t *node) |
Get the number of ids in a CYPHER_AST_REL_ID_LOOKUP node. More... | |
const cypher_astnode_t * | cypher_ast_rel_id_lookup_get_id (const cypher_astnode_t *node, unsigned int index) |
Get an id of a CYPHER_AST_REL_ID_LOOKUP node. More... | |
cypher_astnode_t * | cypher_ast_all_rels_scan (const cypher_astnode_t *identifier, cypher_astnode_t **children, unsigned int nchildren, struct cypher_input_range range) |
Construct a CYPHER_AST_ALL_RELS_SCAN node. More... | |
const cypher_astnode_t * | cypher_ast_all_rels_scan_get_identifier (const cypher_astnode_t *node) |
Get the identifier of a CYPHER_AST_ALL_RELS_SCAN node. More... | |
cypher_astnode_t * | cypher_ast_match (bool optional, const cypher_astnode_t *pattern, cypher_astnode_t *const *hints, unsigned int nhints, const cypher_astnode_t *predicate, cypher_astnode_t **children, unsigned int nchildren, struct cypher_input_range range) |
Construct a CYPHER_AST_MATCH node. More... | |
bool | cypher_ast_match_is_optional (const cypher_astnode_t *node) |
Check if the optional value of a CYPHER_AST_MATCH node is set. More... | |
const cypher_astnode_t * | cypher_ast_match_get_pattern (const cypher_astnode_t *node) |
Get the pattern of a CYPHER_AST_MATCH node. More... | |
unsigned int | cypher_ast_match_nhints (const cypher_astnode_t *node) |
Get the number of hints in a CYPHER_AST_MATCH node. More... | |
const cypher_astnode_t * | cypher_ast_match_get_hint (const cypher_astnode_t *node, unsigned int index) |
Get a hint from a CYPHER_AST_MATCH node. More... | |
const cypher_astnode_t * | cypher_ast_match_get_predicate (const cypher_astnode_t *node) |
Get the predicate of a CYPHER_AST_PREDICATE node. More... | |
cypher_astnode_t * | cypher_ast_using_index (const cypher_astnode_t *identifier, const cypher_astnode_t *label, const cypher_astnode_t *prop_name, cypher_astnode_t **children, unsigned int nchildren, struct cypher_input_range range) |
Construct a CYPHER_AST_USING_INDEX node. More... | |
const cypher_astnode_t * | cypher_ast_using_index_get_identifier (const cypher_astnode_t *node) |
Get the identifer of a CYPHER_AST_USING_INDEX node. More... | |
const cypher_astnode_t * | cypher_ast_using_index_get_label (const cypher_astnode_t *node) |
Get the label of a CYPHER_AST_USING_INDEX node. More... | |
const cypher_astnode_t * | cypher_ast_using_index_get_prop_name (const cypher_astnode_t *node) |
Get the label of a CYPHER_AST_USING_INDEX node. More... | |
cypher_astnode_t * | cypher_ast_using_join (cypher_astnode_t *const *identifiers, unsigned int nidentifiers, cypher_astnode_t **children, unsigned int nchildren, struct cypher_input_range range) |
Construct a CYPHER_AST_USING_JOIN node. More... | |
unsigned int | cypher_ast_using_join_nidentifiers (const cypher_astnode_t *node) |
Get the number of identifiers in a CYPHER_AST_USING_JOIN node. More... | |
const cypher_astnode_t * | cypher_ast_using_join_get_identifier (const cypher_astnode_t *node, unsigned int index) |
Get a identifier from a CYPHER_AST_USING_JOIN node. More... | |
cypher_astnode_t * | cypher_ast_using_scan (const cypher_astnode_t *identifier, const cypher_astnode_t *label, cypher_astnode_t **children, unsigned int nchildren, struct cypher_input_range range) |
Construct a CYPHER_AST_USING_SCAN node. More... | |
const cypher_astnode_t * | cypher_ast_using_scan_get_identifier (const cypher_astnode_t *node) |
Get the identifer of a CYPHER_AST_USING_SCAN node. More... | |
const cypher_astnode_t * | cypher_ast_using_scan_get_label (const cypher_astnode_t *node) |
Get the label of a CYPHER_AST_USING_SCAN node. More... | |
cypher_astnode_t * | cypher_ast_merge (const cypher_astnode_t *path, cypher_astnode_t *const *actions, unsigned int nactions, cypher_astnode_t **children, unsigned int nchildren, struct cypher_input_range range) |
Construct a CYPHER_AST_MERGE node. More... | |
const cypher_astnode_t * | cypher_ast_merge_get_pattern_path (const cypher_astnode_t *node) |
Get the pattern path of a CYPHER_AST_MERGE node. More... | |
unsigned int | cypher_ast_merge_nactions (const cypher_astnode_t *node) |
Get the number of actions in a CYPHER_AST_MERGE node. More... | |
const cypher_astnode_t * | cypher_ast_merge_get_action (const cypher_astnode_t *node, unsigned int index) |
Get an action from a CYPHER_AST_MERGE node. More... | |
cypher_astnode_t * | cypher_ast_on_match (cypher_astnode_t *const *items, unsigned int nitems, cypher_astnode_t **children, unsigned int nchildren, struct cypher_input_range range) |
Construct a CYPHER_AST_ON_MATCH node. More... | |
unsigned int | cypher_ast_on_match_nitems (const cypher_astnode_t *node) |
Get the number of items in a CYPHER_AST_ON_MATCH node. More... | |
const cypher_astnode_t * | cypher_ast_on_match_get_item (const cypher_astnode_t *node, unsigned int index) |
Get an item from a CYPHER_AST_ON_MATCH node. More... | |
cypher_astnode_t * | cypher_ast_on_create (cypher_astnode_t *const *items, unsigned int nitems, cypher_astnode_t **children, unsigned int nchildren, struct cypher_input_range range) |
Construct a CYPHER_AST_ON_CREATE node. More... | |
unsigned int | cypher_ast_on_create_nitems (const cypher_astnode_t *node) |
Get the number of items in a CYPHER_AST_ON_CREATE node. More... | |
const cypher_astnode_t * | cypher_ast_on_create_get_item (const cypher_astnode_t *node, unsigned int index) |
Get an item from a CYPHER_AST_ON_CREATE node. More... | |
cypher_astnode_t * | cypher_ast_create (bool unique, const cypher_astnode_t *pattern, cypher_astnode_t **children, unsigned int nchildren, struct cypher_input_range range) |
Construct a CYPHER_AST_CREATE node. More... | |
bool | cypher_ast_create_is_unique (const cypher_astnode_t *node) |
Check if the unique value of a CYPHER_AST_CREATE node is set. More... | |
const cypher_astnode_t * | cypher_ast_create_get_pattern (const cypher_astnode_t *node) |
Get the pattern of a CYPHER_AST_CREATE node. More... | |
cypher_astnode_t * | cypher_ast_set (cypher_astnode_t *const *items, unsigned int nitems, cypher_astnode_t **children, unsigned int nchildren, struct cypher_input_range range) |
Construct a CYPHER_AST_SET node. More... | |
unsigned int | cypher_ast_set_nitems (const cypher_astnode_t *node) |
Get the number of items in a CYPHER_AST_SET node. More... | |
const cypher_astnode_t * | cypher_ast_set_get_item (const cypher_astnode_t *node, unsigned int index) |
Get an item from a CYPHER_AST_SET node. More... | |
cypher_astnode_t * | cypher_ast_set_property (const cypher_astnode_t *property, const cypher_astnode_t *expression, cypher_astnode_t **children, unsigned int nchildren, struct cypher_input_range range) |
Construct a CYPHER_AST_SET_PROPERTY node. More... | |
const cypher_astnode_t * | cypher_ast_set_property_get_property (const cypher_astnode_t *node) |
Get the property operator of a CYPHER_AST_SET_PROPERTY node. More... | |
const cypher_astnode_t * | cypher_ast_set_property_get_expression (const cypher_astnode_t *node) |
Get the expression of a CYPHER_AST_SET_PROPERTY node. More... | |
cypher_astnode_t * | cypher_ast_set_all_properties (const cypher_astnode_t *identifier, const cypher_astnode_t *expression, cypher_astnode_t **children, unsigned int nchildren, struct cypher_input_range range) |
Construct a CYPHER_AST_SET_ALL_PROPERTIES node. More... | |
const cypher_astnode_t * | cypher_ast_set_all_properties_get_identifier (const cypher_astnode_t *node) |
Get the identifier of a CYPHER_AST_SET_ALL_PROPERTIES node. More... | |
const cypher_astnode_t * | cypher_ast_set_all_properties_get_expression (const cypher_astnode_t *node) |
Get the expression of a CYPHER_AST_SET_ALL_PROPERTIES node. More... | |
cypher_astnode_t * | cypher_ast_merge_properties (const cypher_astnode_t *identifier, const cypher_astnode_t *expression, cypher_astnode_t **children, unsigned int nchildren, struct cypher_input_range range) |
Construct a CYPHER_AST_MERGE_PROPERTIES node. More... | |
const cypher_astnode_t * | cypher_ast_merge_properties_get_identifier (const cypher_astnode_t *node) |
Get the identifier of a CYPHER_AST_MERGE_PROPERTIES node. More... | |
const cypher_astnode_t * | cypher_ast_merge_properties_get_expression (const cypher_astnode_t *node) |
Get the expression of a CYPHER_AST_MERGE_PROPERTIES node. More... | |
cypher_astnode_t * | cypher_ast_set_labels (const cypher_astnode_t *identifier, cypher_astnode_t *const *labels, unsigned int nlabels, cypher_astnode_t **children, unsigned int nchildren, struct cypher_input_range range) |
Construct a CYPHER_AST_SET_LABELS node. More... | |
const cypher_astnode_t * | cypher_ast_set_labels_get_identifier (const cypher_astnode_t *node) |
Get the identifier of a CYPHER_AST_SET_LABELS node. More... | |
unsigned int | cypher_ast_set_labels_nlabels (const cypher_astnode_t *node) |
Get the number of labels in a CYPHER_AST_SET_LABELS node. More... | |
const cypher_astnode_t * | cypher_ast_set_labels_get_label (const cypher_astnode_t *node, unsigned int index) |
Get a label from a CYPHER_AST_SET_LABELS node. More... | |
cypher_astnode_t * | cypher_ast_delete (bool detach, cypher_astnode_t *const *expressions, unsigned int nexpressions, cypher_astnode_t **children, unsigned int nchildren, struct cypher_input_range range) |
Construct a CYPHER_AST_DELETE node. More... | |
bool | cypher_ast_delete_has_detach (const cypher_astnode_t *node) |
Check if DETACH is present for a CYPHER_AST_DELETE node. More... | |
unsigned int | cypher_ast_delete_nexpressions (const cypher_astnode_t *node) |
Get the number of expression in a CYPHER_AST_DELETE node. More... | |
const cypher_astnode_t * | cypher_ast_delete_get_expression (const cypher_astnode_t *node, unsigned int index) |
Get an expression from a CYPHER_AST_DELETE node. More... | |
cypher_astnode_t * | cypher_ast_remove (cypher_astnode_t *const *items, unsigned int nitems, cypher_astnode_t **children, unsigned int nchildren, struct cypher_input_range range) |
Construct a CYPHER_AST_REMOVE node. More... | |
unsigned int | cypher_ast_remove_nitems (const cypher_astnode_t *node) |
Get the number of items in a CYPHER_AST_REMOVE node. More... | |
const cypher_astnode_t * | cypher_ast_remove_get_item (const cypher_astnode_t *node, unsigned int index) |
Get an item from a CYPHER_AST_REMOVE node. More... | |
cypher_astnode_t * | cypher_ast_remove_labels (const cypher_astnode_t *identifier, cypher_astnode_t *const *labels, unsigned int nlabels, cypher_astnode_t **children, unsigned int nchildren, struct cypher_input_range range) |
Construct a CYPHER_AST_REMOVE_LABELS node. More... | |
const cypher_astnode_t * | cypher_ast_remove_labels_get_identifier (const cypher_astnode_t *node) |
Get the identifier of a CYPHER_AST_REMOVE_LABELS node. More... | |
unsigned int | cypher_ast_remove_labels_nlabels (const cypher_astnode_t *node) |
Get the number of labels in a CYPHER_AST_REMOVE_LABELS node. More... | |
const cypher_astnode_t * | cypher_ast_remove_labels_get_label (const cypher_astnode_t *node, unsigned int index) |
Get a label from a CYPHER_AST_REMOVE_LABELS node. More... | |
cypher_astnode_t * | cypher_ast_remove_property (const cypher_astnode_t *property, cypher_astnode_t **children, unsigned int nchildren, struct cypher_input_range range) |
Construct a CYPHER_AST_REMOVE_PROPERTY node. More... | |
const cypher_astnode_t * | cypher_ast_remove_property_get_property (const cypher_astnode_t *node) |
Get the property operator of a CYPHER_AST_REMOVE_PROPERTY node. More... | |
cypher_astnode_t * | cypher_ast_foreach (const cypher_astnode_t *identifier, const cypher_astnode_t *expression, cypher_astnode_t *const *clauses, unsigned int nclauses, cypher_astnode_t **children, unsigned int nchildren, struct cypher_input_range range) |
Construct a CYPHER_AST_FOREACH node. More... | |
const cypher_astnode_t * | cypher_ast_foreach_get_identifier (const cypher_astnode_t *node) |
Get the identifier of a CYPHER_AST_FOREACH node. More... | |
const cypher_astnode_t * | cypher_ast_foreach_get_expression (const cypher_astnode_t *node) |
Get the expression of a CYPHER_AST_FOREACH node. More... | |
unsigned int | cypher_ast_foreach_nclauses (const cypher_astnode_t *node) |
Get the number of clauses from a CYPHER_AST_FOREACH node. More... | |
const cypher_astnode_t * | cypher_ast_foreach_get_clause (const cypher_astnode_t *node, unsigned int index) |
Get a clause from a CYPHER_AST_FOREACH node. More... | |
cypher_astnode_t * | cypher_ast_with (bool distinct, bool include_existing, cypher_astnode_t *const *projections, unsigned int nprojections, const cypher_astnode_t *order_by, const cypher_astnode_t *skip, const cypher_astnode_t *limit, const cypher_astnode_t *predicate, cypher_astnode_t **children, unsigned int nchildren, struct cypher_input_range range) |
Construct a CYPHER_AST_WITH node. More... | |
bool | cypher_ast_with_is_distinct (const cypher_astnode_t *node) |
Check if DISTINCT is present for a CYPHER_AST_WITH node. More... | |
bool | cypher_ast_with_has_include_existing (const cypher_astnode_t *node) |
Check if including existing identifiers (* ) in a CYPHER_AST_WITH node. More... | |
unsigned int | cypher_ast_with_nprojections (const cypher_astnode_t *node) |
Get the number of projections in a CYPHER_AST_WITH node. More... | |
const cypher_astnode_t * | cypher_ast_with_get_projection (const cypher_astnode_t *node, unsigned int index) |
Get a projection from a CYPHER_AST_WITH node. More... | |
const cypher_astnode_t * | cypher_ast_with_get_order_by (const cypher_astnode_t *node) |
Get the "order by" node of a CYPHER_AST_WITH node. More... | |
const cypher_astnode_t * | cypher_ast_with_get_skip (const cypher_astnode_t *node) |
Get the skip value of a CYPHER_AST_WITH node. More... | |
const cypher_astnode_t * | cypher_ast_with_get_limit (const cypher_astnode_t *node) |
Get the limit value of a CYPHER_AST_WITH node. More... | |
const cypher_astnode_t * | cypher_ast_with_get_predicate (const cypher_astnode_t *node) |
Get the predicate of a CYPHER_AST_WITH node. More... | |
cypher_astnode_t * | cypher_ast_unwind (const cypher_astnode_t *expression, const cypher_astnode_t *alias, cypher_astnode_t **children, unsigned int nchildren, struct cypher_input_range range) |
Construct a CYPHER_AST_UNWIND node. More... | |
const cypher_astnode_t * | cypher_ast_unwind_get_expression (const cypher_astnode_t *node) |
Get the expression of a CYPHER_AST_UNWIND node. More... | |
const cypher_astnode_t * | cypher_ast_unwind_get_alias (const cypher_astnode_t *node) |
Get the alias of a CYPHER_AST_UNWIND node. More... | |
cypher_astnode_t * | cypher_ast_call (const cypher_astnode_t *proc_name, cypher_astnode_t *const *args, unsigned int nargs, cypher_astnode_t *const *projections, unsigned int nprojections, cypher_astnode_t **children, unsigned int nchildren, struct cypher_input_range range) |
Construct a CYPHER_AST_CALL node. More... | |
const cypher_astnode_t * | cypher_ast_call_get_proc_name (const cypher_astnode_t *node) |
Get the proc name of a CYPHER_AST_CALL node. More... | |
unsigned int | cypher_ast_call_narguments (const cypher_astnode_t *node) |
Get the number of arguments of a CYPHER_AST_CALL node. More... | |
const cypher_astnode_t * | cypher_ast_call_get_argument (const cypher_astnode_t *node, unsigned int index) |
Get an argument of a CYPHER_AST_CALL node. More... | |
unsigned int | cypher_ast_call_nprojections (const cypher_astnode_t *node) |
Get the number of projections of a CYPHER_AST_CALL node. More... | |
const cypher_astnode_t * | cypher_ast_call_get_projection (const cypher_astnode_t *node, unsigned int index) |
Get a projection of a CYPHER_AST_CALL node. More... | |
cypher_astnode_t * | cypher_ast_return (bool distinct, bool include_existing, cypher_astnode_t *const *projections, unsigned int nprojections, const cypher_astnode_t *order_by, const cypher_astnode_t *skip, const cypher_astnode_t *limit, cypher_astnode_t **children, unsigned int nchildren, struct cypher_input_range range) |
Construct a CYPHER_AST_RETURN node. More... | |
bool | cypher_ast_return_is_distinct (const cypher_astnode_t *node) |
Check if DISTINCT is set in a CYPHER_AST_RETURN node. More... | |
bool | cypher_ast_return_has_include_existing (const cypher_astnode_t *node) |
Check if including existing identifiers (* ) in a CYPHER_AST_RETURN node. More... | |
unsigned int | cypher_ast_return_nprojections (const cypher_astnode_t *node) |
Get the number of projections in a CYPHER_AST_RETURN node. More... | |
const cypher_astnode_t * | cypher_ast_return_get_projection (const cypher_astnode_t *node, unsigned int index) |
Get a projection from a CYPHER_AST_RETURN node. More... | |
const cypher_astnode_t * | cypher_ast_return_get_order_by (const cypher_astnode_t *node) |
Get the "order by" node of a CYPHER_AST_RETURN node. More... | |
const cypher_astnode_t * | cypher_ast_return_get_skip (const cypher_astnode_t *node) |
Get the skip value of a CYPHER_AST_RETURN node. More... | |
const cypher_astnode_t * | cypher_ast_return_get_limit (const cypher_astnode_t *node) |
Get the limit value of a CYPHER_AST_RETURN node. More... | |
cypher_astnode_t * | cypher_ast_projection (const cypher_astnode_t *expression, const cypher_astnode_t *alias, cypher_astnode_t **children, unsigned int nchildren, struct cypher_input_range range) |
Construct a CYPHER_AST_PROJECTION node. More... | |
const cypher_astnode_t * | cypher_ast_projection_get_expression (const cypher_astnode_t *node) |
Get the expression from a CYPHER_AST_PROJECTION node. More... | |
const cypher_astnode_t * | cypher_ast_projection_get_alias (const cypher_astnode_t *node) |
Get the alias from a CYPHER_AST_PROJECTION node. More... | |
cypher_astnode_t * | cypher_ast_order_by (cypher_astnode_t *const *items, unsigned int nitems, cypher_astnode_t **children, unsigned int nchildren, struct cypher_input_range range) |
Construct a CYPHER_AST_ORDER_BY node. More... | |
unsigned int | cypher_ast_order_by_nitems (const cypher_astnode_t *node) |
Get the number of items in a CYPHER_AST_ORDER_BY node. More... | |
const cypher_astnode_t * | cypher_ast_order_by_get_item (const cypher_astnode_t *node, unsigned int index) |
Get an item from a CYPHER_AST_ORDER_BY node. More... | |
cypher_astnode_t * | cypher_ast_sort_item (const cypher_astnode_t *expression, bool ascending, cypher_astnode_t **children, unsigned int nchildren, struct cypher_input_range range) |
Construct a CYPHER_AST_SORT_ITEM node. More... | |
const cypher_astnode_t * | cypher_ast_sort_item_get_expression (const cypher_astnode_t *node) |
Get the expression from a CYPHER_AST_SORT_ITEM node. More... | |
bool | cypher_ast_sort_item_is_ascending (const cypher_astnode_t *node) |
Check if a CYPHER_AST_SORT_ITEM node is using ascending order. More... | |
cypher_astnode_t * | cypher_ast_union (bool all, cypher_astnode_t **children, unsigned int nchildren, struct cypher_input_range range) |
Construct a CYPHER_AST_UNION node. More... | |
bool | cypher_ast_union_has_all (const cypher_astnode_t *node) |
Check if a CYPHER_AST_UNION node has ALL specified. More... | |
cypher_astnode_t * | cypher_ast_unary_operator (const cypher_operator_t *op, const cypher_astnode_t *arg, cypher_astnode_t **children, unsigned int nchildren, struct cypher_input_range range) |
Construct a CYPHER_AST_UNARY_OPERATOR node. More... | |
const cypher_operator_t * | cypher_ast_unary_operator_get_operator (const cypher_astnode_t *node) |
Get the operator of a CYPHER_AST_UNARY_OPERATOR node. More... | |
const cypher_astnode_t * | cypher_ast_unary_operator_get_argument (const cypher_astnode_t *node) |
Get the argument of a CYPHER_AST_UNARY_OPERATOR node. More... | |
cypher_astnode_t * | cypher_ast_binary_operator (const cypher_operator_t *op, const cypher_astnode_t *arg1, const cypher_astnode_t *arg2, cypher_astnode_t **children, unsigned int nchildren, struct cypher_input_range range) |
Construct a CYPHER_AST_BINARY_OPERATOR node. More... | |
const cypher_operator_t * | cypher_ast_binary_operator_get_operator (const cypher_astnode_t *node) |
Get the operator of a CYPHER_AST_BINARY_OPERATOR node. More... | |
const cypher_astnode_t * | cypher_ast_binary_operator_get_argument1 (const cypher_astnode_t *node) |
Get the first (left) argument of a CYPHER_AST_BINARY_OPERATOR node. More... | |
const cypher_astnode_t * | cypher_ast_binary_operator_get_argument2 (const cypher_astnode_t *node) |
Get the second (right) argument of a CYPHER_AST_BINARY_OPERATOR node. More... | |
cypher_astnode_t * | cypher_ast_comparison (unsigned int length, const cypher_operator_t *const *ops, cypher_astnode_t *const *args, cypher_astnode_t **children, unsigned int nchildren, struct cypher_input_range range) |
Construct a CYPHER_AST_COMPARISON node. More... | |
unsigned int | cypher_ast_comparison_get_length (const cypher_astnode_t *node) |
Get the comparsion chain length of a CYPHER_AST_COMPARISON node. More... | |
const cypher_operator_t * | cypher_ast_comparison_get_operator (const cypher_astnode_t *node, unsigned int pos) |
Get an operator in the chain of a CYPHER_AST_COMPARISON node. More... | |
const cypher_astnode_t * | cypher_ast_comparison_get_argument (const cypher_astnode_t *node, unsigned int pos) |
Get the argument in the chain of a CYPHER_AST_COMPARISON node. More... | |
cypher_astnode_t * | cypher_ast_apply_operator (const cypher_astnode_t *func_name, bool distinct, cypher_astnode_t *const *args, unsigned int nargs, cypher_astnode_t **children, unsigned int nchildren, struct cypher_input_range range) |
Construct a CYPHER_AST_APPLY_OPERATOR node. More... | |
const cypher_astnode_t * | cypher_ast_apply_operator_get_func_name (const cypher_astnode_t *node) |
Get the function name of a CYPHER_AST_APPLY_OPERATOR node. More... | |
bool | cypher_ast_apply_operator_get_distinct (const cypher_astnode_t *node) |
Check if a CYPHER_AST_APPLY_OPERATOR node is DISTINCT . More... | |
unsigned int | cypher_ast_apply_operator_narguments (const cypher_astnode_t *node) |
Get the number of arguments of a CYPHER_AST_APPLY_OPERATOR node. More... | |
const cypher_astnode_t * | cypher_ast_apply_operator_get_argument (const cypher_astnode_t *node, unsigned int index) |
Get an argument of a CYPHER_AST_APPLY_OPERATOR node. More... | |
cypher_astnode_t * | cypher_ast_apply_all_operator (const cypher_astnode_t *func_name, bool distinct, cypher_astnode_t **children, unsigned int nchildren, struct cypher_input_range range) |
Construct a CYPHER_AST_APPLY_ALL_OPERATOR node. More... | |
const cypher_astnode_t * | cypher_ast_apply_all_operator_get_func_name (const cypher_astnode_t *node) |
Get the function name of a CYPHER_AST_APPLY_ALL_OPERATOR node. More... | |
bool | cypher_ast_apply_all_operator_get_distinct (const cypher_astnode_t *node) |
Check if a CYPHER_AST_APPLY_ALL_OPERATOR node is DISTINCT . More... | |
cypher_astnode_t * | cypher_ast_property_operator (const cypher_astnode_t *expression, const cypher_astnode_t *prop_name, cypher_astnode_t **children, unsigned int nchildren, struct cypher_input_range range) |
Construct a CYPHER_AST_PROPERTY_OPERATOR node. More... | |
const cypher_astnode_t * | cypher_ast_property_operator_get_expression (const cypher_astnode_t *node) |
Get the expression of a CYPHER_AST_PROPERTY_OPERATOR node. More... | |
const cypher_astnode_t * | cypher_ast_property_operator_get_prop_name (const cypher_astnode_t *node) |
Get the property name of a CYPHER_AST_PROPERTY_OPERATOR node. More... | |
cypher_astnode_t * | cypher_ast_subscript_operator (const cypher_astnode_t *expression, const cypher_astnode_t *subscript, cypher_astnode_t **children, unsigned int nchildren, struct cypher_input_range range) |
Construct a CYPHER_AST_SUBSCRIPT_OPERATOR node. More... | |
const cypher_astnode_t * | cypher_ast_subscript_operator_get_expression (const cypher_astnode_t *node) |
Get the expression of a CYPHER_AST_SUBSCRIPT_OPERATOR node. More... | |
const cypher_astnode_t * | cypher_ast_subscript_operator_get_subscript (const cypher_astnode_t *node) |
Get the subscript of a CYPHER_AST_SUBSCRIPT_OPERATOR node. More... | |
cypher_astnode_t * | cypher_ast_slice_operator (const cypher_astnode_t *expression, const cypher_astnode_t *start, const cypher_astnode_t *end, cypher_astnode_t **children, unsigned int nchildren, struct cypher_input_range range) |
Construct a CYPHER_AST_SLICE_OPERATOR node. More... | |
const cypher_astnode_t * | cypher_ast_slice_operator_get_expression (const cypher_astnode_t *node) |
Get the expression of a CYPHER_AST_SLICE_OPERATOR node. More... | |
const cypher_astnode_t * | cypher_ast_slice_operator_get_start (const cypher_astnode_t *node) |
Get the start of a CYPHER_AST_SLICE_OPERATOR node. More... | |
const cypher_astnode_t * | cypher_ast_slice_operator_get_end (const cypher_astnode_t *node) |
Get the end of a CYPHER_AST_SLICE_OPERATOR node. More... | |
cypher_astnode_t * | cypher_ast_map_projection (const cypher_astnode_t *expression, cypher_astnode_t *const *selectors, unsigned int nselectors, cypher_astnode_t **children, unsigned int nchildren, struct cypher_input_range range) |
Construct a CYPHER_AST_MAP_PROJECTION node. More... | |
const cypher_astnode_t * | cypher_ast_map_projection_get_expression (const cypher_astnode_t *node) |
Get the expression of a CYPHER_AST_MAP_PROJECTION node. More... | |
unsigned int | cypher_ast_map_projection_nselectors (const cypher_astnode_t *node) |
Get the number of selectors in a CYPHER_AST_MAP_PROJECTION node. More... | |
const cypher_astnode_t * | cypher_ast_map_projection_get_selector (const cypher_astnode_t *node, unsigned int index) |
Get a selector from a CYPHER_AST_MAP_PROJECTION node. More... | |
cypher_astnode_t * | cypher_ast_map_projection_literal (const cypher_astnode_t *prop_name, const cypher_astnode_t *expression, cypher_astnode_t **children, unsigned int nchildren, struct cypher_input_range range) |
Construct a CYPHER_AST_MAP_PROJECTION_LITERAL node. More... | |
const cypher_astnode_t * | cypher_ast_map_projection_literal_get_prop_name (const cypher_astnode_t *node) |
Get the property name of a CYPHER_AST_MAP_PROJECTION_LITERAL node. More... | |
const cypher_astnode_t * | cypher_ast_map_projection_literal_get_expression (const cypher_astnode_t *node) |
Get the expression of a CYPHER_AST_MAP_PROJECTION_LITERAL node. More... | |
cypher_astnode_t * | cypher_ast_map_projection_property (const cypher_astnode_t *prop_name, cypher_astnode_t **children, unsigned int nchildren, struct cypher_input_range range) |
Construct a CYPHER_AST_MAP_PROJECTION_PROPERTY node. More... | |
const cypher_astnode_t * | cypher_ast_map_projection_property_get_prop_name (const cypher_astnode_t *node) |
Get the property name of a CYPHER_AST_MAP_PROJECTION_PROPERTY node. More... | |
cypher_astnode_t * | cypher_ast_map_projection_identifier (const cypher_astnode_t *identifier, cypher_astnode_t **children, unsigned int nchildren, struct cypher_input_range range) |
Construct a CYPHER_AST_MAP_PROJECTION_IDENTIFIER node. More... | |
const cypher_astnode_t * | cypher_ast_map_projection_identifier_get_identifier (const cypher_astnode_t *node) |
Get the identifier of a CYPHER_AST_MAP_PROJECTION_IDENTIFIER node. More... | |
cypher_astnode_t * | cypher_ast_map_projection_all_properties (cypher_astnode_t **children, unsigned int nchildren, struct cypher_input_range range) |
Construct a CYPHER_AST_MAP_PROJECTION_ALL_PROPERTIES node. More... | |
cypher_astnode_t * | cypher_ast_labels_operator (const cypher_astnode_t *expression, cypher_astnode_t *const *labels, unsigned int nlabels, cypher_astnode_t **children, unsigned int nchildren, struct cypher_input_range range) |
Construct a CYPHER_AST_LABELS_OPERATOR node. More... | |
const cypher_astnode_t * | cypher_ast_labels_operator_get_expression (const cypher_astnode_t *node) |
Get the expression of a CYPHER_AST_PROPERTY_OPERATOR node. More... | |
unsigned int | cypher_ast_labels_operator_nlabels (const cypher_astnode_t *node) |
Get the number of labels from a CYPHER_AST_LABELS_OPERATOR node. More... | |
const cypher_astnode_t * | cypher_ast_labels_operator_get_label (const cypher_astnode_t *node, unsigned int index) |
Get a label from a CYPHER_AST_LABELS_OPERATOR node. More... | |
cypher_astnode_t * | cypher_ast_list_comprehension (const cypher_astnode_t *identifier, const cypher_astnode_t *expression, const cypher_astnode_t *predicate, const cypher_astnode_t *eval, cypher_astnode_t **children, unsigned int nchildren, struct cypher_input_range range) |
Construct a CYPHER_AST_LIST_COMPREHENSION node. More... | |
const cypher_astnode_t * | cypher_ast_list_comprehension_get_identifier (const cypher_astnode_t *node) |
Get the identifier from a CYPHER_AST_LIST_COMPREHENSION node. More... | |
const cypher_astnode_t * | cypher_ast_list_comprehension_get_expression (const cypher_astnode_t *node) |
Get the expression from a CYPHER_AST_LIST_COMPREHENSION node. More... | |
const cypher_astnode_t * | cypher_ast_list_comprehension_get_predicate (const cypher_astnode_t *node) |
Get the predicate from a CYPHER_AST_LIST_COMPREHENSION node. More... | |
const cypher_astnode_t * | cypher_ast_list_comprehension_get_eval (const cypher_astnode_t *node) |
Get the evaluation from a CYPHER_AST_LIST_COMPREHENSION node. More... | |
cypher_astnode_t * | cypher_ast_filter (const cypher_astnode_t *identifier, const cypher_astnode_t *expression, const cypher_astnode_t *predicate, cypher_astnode_t **children, unsigned int nchildren, struct cypher_input_range range) |
Construct a CYPHER_AST_FILTER node. More... | |
cypher_astnode_t * | cypher_ast_extract (const cypher_astnode_t *identifier, const cypher_astnode_t *expression, const cypher_astnode_t *eval, cypher_astnode_t **children, unsigned int nchildren, struct cypher_input_range range) |
Construct a CYPHER_AST_EXTRACT node. More... | |
cypher_astnode_t * | cypher_ast_all (const cypher_astnode_t *identifier, const cypher_astnode_t *expression, const cypher_astnode_t *predicate, cypher_astnode_t **children, unsigned int nchildren, struct cypher_input_range range) |
Construct a CYPHER_AST_ALL node. More... | |
cypher_astnode_t * | cypher_ast_any (const cypher_astnode_t *identifier, const cypher_astnode_t *expression, const cypher_astnode_t *predicate, cypher_astnode_t **children, unsigned int nchildren, struct cypher_input_range range) |
Construct a CYPHER_AST_ANY node. More... | |
cypher_astnode_t * | cypher_ast_single (const cypher_astnode_t *identifier, const cypher_astnode_t *expression, const cypher_astnode_t *predicate, cypher_astnode_t **children, unsigned int nchildren, struct cypher_input_range range) |
Construct a CYPHER_AST_SINGLE node. More... | |
cypher_astnode_t * | cypher_ast_none (const cypher_astnode_t *identifier, const cypher_astnode_t *expression, const cypher_astnode_t *predicate, cypher_astnode_t **children, unsigned int nchildren, struct cypher_input_range range) |
Construct a CYPHER_AST_NONE node. More... | |
cypher_astnode_t * | cypher_ast_pattern_comprehension (const cypher_astnode_t *identifier, const cypher_astnode_t *pattern, const cypher_astnode_t *predicate, const cypher_astnode_t *eval, cypher_astnode_t **children, unsigned int nchildren, struct cypher_input_range range) |
Construct a CYPHER_AST_PATTERN_COMPREHENSION node. More... | |
const cypher_astnode_t * | cypher_ast_pattern_comprehension_get_identifier (const cypher_astnode_t *node) |
Get the identifier from a CYPHER_AST_PATTERN_COMPREHENSION node. More... | |
const cypher_astnode_t * | cypher_ast_pattern_comprehension_get_pattern (const cypher_astnode_t *node) |
Get the expression from a CYPHER_AST_PATTERN_COMPREHENSION node. More... | |
const cypher_astnode_t * | cypher_ast_pattern_comprehension_get_predicate (const cypher_astnode_t *node) |
Get the predicate from a CYPHER_AST_PATTERN_COMPREHENSION node. More... | |
const cypher_astnode_t * | cypher_ast_pattern_comprehension_get_eval (const cypher_astnode_t *node) |
Get the evaluation from a CYPHER_AST_PATTERN_COMPREHENSION node. More... | |
cypher_astnode_t * | cypher_ast_reduce (const cypher_astnode_t *accumulator, const cypher_astnode_t *init, const cypher_astnode_t *identifier, const cypher_astnode_t *expression, const cypher_astnode_t *eval, cypher_astnode_t **children, unsigned int nchildren, struct cypher_input_range range) |
Construct a CYPHER_AST_REDUCE node. More... | |
const cypher_astnode_t * | cypher_ast_reduce_get_accumulator (const cypher_astnode_t *node) |
Get the accumulator from a CYPHER_AST_REDUCE node. More... | |
const cypher_astnode_t * | cypher_ast_reduce_get_init (const cypher_astnode_t *node) |
Get the accumulator init expression from a CYPHER_AST_REDUCE node. More... | |
const cypher_astnode_t * | cypher_ast_reduce_get_identifier (const cypher_astnode_t *node) |
Get the identifier from a CYPHER_AST_REDUCE node. More... | |
const cypher_astnode_t * | cypher_ast_reduce_get_expression (const cypher_astnode_t *node) |
Get the expression from a CYPHER_AST_REDUCE node. More... | |
const cypher_astnode_t * | cypher_ast_reduce_get_eval (const cypher_astnode_t *node) |
Get the evaluation from a CYPHER_AST_REDUCE node. More... | |
cypher_astnode_t * | cypher_ast_case (const cypher_astnode_t *expression, cypher_astnode_t *const *alternatives, unsigned int nalternatives, const cypher_astnode_t *deflt, cypher_astnode_t **children, unsigned int nchildren, struct cypher_input_range range) |
Construct a CYPHER_AST_CASE node. More... | |
const cypher_astnode_t * | cypher_ast_case_get_expression (const cypher_astnode_t *node) |
Get the expression from a CYPHER_AST_CASE node. More... | |
unsigned int | cypher_ast_case_nalternatives (const cypher_astnode_t *node) |
Get the number of alternatives from a CYPHER_AST_CASE node. More... | |
const cypher_astnode_t * | cypher_ast_case_get_predicate (const cypher_astnode_t *node, unsigned int index) |
Get a predicate from a CYPHER_AST_CASE node. More... | |
const cypher_astnode_t * | cypher_ast_case_get_value (const cypher_astnode_t *node, unsigned int index) |
Get a value from a CYPHER_AST_CASE node. More... | |
const cypher_astnode_t * | cypher_ast_case_get_default (const cypher_astnode_t *node) |
Get the default from a CYPHER_AST_CASE node. More... | |
cypher_astnode_t * | cypher_ast_collection (cypher_astnode_t *const *elements, unsigned int nelements, cypher_astnode_t **children, unsigned int nchildren, struct cypher_input_range range) |
Construct a CYPHER_AST_COLLECTION node. More... | |
unsigned int | cypher_ast_collection_length (const cypher_astnode_t *node) |
Get the collection length from a CYPHER_AST_COLLECTION node. More... | |
const cypher_astnode_t * | cypher_ast_collection_get (const cypher_astnode_t *node, unsigned int index) |
Get an element from a CYPHER_AST_COLLECTION node. More... | |
cypher_astnode_t * | cypher_ast_map (cypher_astnode_t *const *keys, cypher_astnode_t *const *values, unsigned int nentries, cypher_astnode_t **children, unsigned int nchildren, struct cypher_input_range range) |
Construct a CYPHER_AST_MAP node. More... | |
cypher_astnode_t * | cypher_ast_pair_map (cypher_astnode_t *const *pairs, unsigned int nentries, cypher_astnode_t **children, unsigned int nchildren, struct cypher_input_range range) |
Construct a CYPHER_AST_MAP node. More... | |
unsigned int | cypher_ast_map_nentries (const cypher_astnode_t *node) |
Get the number of entries in a CYPHER_AST_MAP node. More... | |
const cypher_astnode_t * | cypher_ast_map_get_key (const cypher_astnode_t *node, unsigned int index) |
Get a key from a CYPHER_AST_MAP node. More... | |
const cypher_astnode_t * | cypher_ast_map_get_value (const cypher_astnode_t *node, unsigned int index) |
Get a value from a CYPHER_AST_MAP node. More... | |
cypher_astnode_t * | cypher_ast_identifier (const char *s, size_t n, struct cypher_input_range range) |
Construct a CYPHER_AST_IDENTIFIER node. More... | |
const char * | cypher_ast_identifier_get_name (const cypher_astnode_t *node) |
Get a null terminated name string for a CYPHER_AST_IDENTIFIER node. More... | |
cypher_astnode_t * | cypher_ast_parameter (const char *s, size_t n, struct cypher_input_range range) |
Construct a CYPHER_AST_PARAMETER node. More... | |
const char * | cypher_ast_parameter_get_name (const cypher_astnode_t *node) |
Get a null terminated name string for a CYPHER_AST_PARAMETER node. More... | |
cypher_astnode_t * | cypher_ast_string (const char *s, size_t n, struct cypher_input_range range) |
Construct a CYPHER_AST_STRING node. More... | |
const char * | cypher_ast_string_get_value (const cypher_astnode_t *node) |
Get the null terminated string value from a CYPHER_AST_STRING node. More... | |
cypher_astnode_t * | cypher_ast_integer (const char *s, size_t n, struct cypher_input_range range) |
Construct a CYPHER_AST_INTEGER node. More... | |
const char * | cypher_ast_integer_get_valuestr (const cypher_astnode_t *node) |
Get the null terminated string value from a CYPHER_AST_INTEGER node. More... | |
cypher_astnode_t * | cypher_ast_float (const char *s, size_t n, struct cypher_input_range range) |
Construct a CYPHER_AST_FLOAT node. More... | |
const char * | cypher_ast_float_get_valuestr (const cypher_astnode_t *node) |
Get the null terminated string value from a CYPHER_AST_FLOAT node. More... | |
cypher_astnode_t * | cypher_ast_true (struct cypher_input_range range) |
Construct a CYPHER_AST_TRUE node. More... | |
cypher_astnode_t * | cypher_ast_false (struct cypher_input_range range) |
Construct a CYPHER_AST_FALSE node. More... | |
cypher_astnode_t * | cypher_ast_null (struct cypher_input_range range) |
Construct a CYPHER_AST_NULL node. More... | |
cypher_astnode_t * | cypher_ast_label (const char *s, size_t n, struct cypher_input_range range) |
Construct a CYPHER_AST_LABEL node. More... | |
const char * | cypher_ast_label_get_name (const cypher_astnode_t *node) |
Get a null terminated name string for a CYPHER_AST_LABEL node. More... | |
cypher_astnode_t * | cypher_ast_reltype (const char *s, size_t n, struct cypher_input_range range) |
Construct a CYPHER_AST_RELTYPE node. More... | |
const char * | cypher_ast_reltype_get_name (const cypher_astnode_t *node) |
Get a null terminated name string for a CYPHER_AST_RELTYPE node. More... | |
cypher_astnode_t * | cypher_ast_prop_name (const char *s, size_t n, struct cypher_input_range range) |
Construct a CYPHER_AST_PROP_NAME node. More... | |
const char * | cypher_ast_prop_name_get_value (const cypher_astnode_t *node) |
Get a null terminated name string for a CYPHER_AST_PROP_NAME node. More... | |
cypher_astnode_t * | cypher_ast_function_name (const char *s, size_t n, struct cypher_input_range range) |
Construct a CYPHER_AST_FUNCTION_NAME node. More... | |
const char * | cypher_ast_function_name_get_value (const cypher_astnode_t *node) |
Get a null terminated name string for a CYPHER_AST_FUNCTION_NAME node. More... | |
cypher_astnode_t * | cypher_ast_index_name (const char *s, size_t n, struct cypher_input_range range) |
Construct a CYPHER_AST_INDEX_NAME node. More... | |
const char * | cypher_ast_index_name_get_value (const cypher_astnode_t *node) |
Get a null terminated name string for a CYPHER_AST_INDEX_NAME node. More... | |
cypher_astnode_t * | cypher_ast_proc_name (const char *s, size_t n, struct cypher_input_range range) |
Construct a CYPHER_AST_PROC_NAME node. More... | |
const char * | cypher_ast_proc_name_get_value (const cypher_astnode_t *node) |
Get a null terminated name string for a CYPHER_AST_PROC_NAME node. More... | |
cypher_astnode_t * | cypher_ast_pattern (cypher_astnode_t *const *paths, unsigned int npaths, cypher_astnode_t **children, unsigned int nchildren, struct cypher_input_range range) |
Construct a CYPHER_AST_PATTERN node. More... | |
unsigned int | cypher_ast_pattern_npaths (const cypher_astnode_t *node) |
Get the number of paths in a CYPHER_AST_PATTERN node. More... | |
const cypher_astnode_t * | cypher_ast_pattern_get_path (const cypher_astnode_t *node, unsigned int index) |
Get a path from a CYPHER_AST_PATTERN node. More... | |
cypher_astnode_t * | cypher_ast_named_path (const cypher_astnode_t *identifier, const cypher_astnode_t *path, cypher_astnode_t **children, unsigned int nchildren, struct cypher_input_range range) |
Construct a CYPHER_AST_NAMED_PATH node. More... | |
const cypher_astnode_t * | cypher_ast_named_path_get_identifier (const cypher_astnode_t *node) |
Get the identifier from a CYPHER_AST_NAMED_PATH node. More... | |
const cypher_astnode_t * | cypher_ast_named_path_get_path (const cypher_astnode_t *node) |
Get the unnamed pattern path from a CYPHER_AST_NAMED_PATH node. More... | |
cypher_astnode_t * | cypher_ast_shortest_path (bool single, const cypher_astnode_t *path, cypher_astnode_t **children, unsigned int nchildren, struct cypher_input_range range) |
Construct a CYPHER_AST_SHORTEST_PATH node. More... | |
bool | cypher_ast_shortest_path_is_single (const cypher_astnode_t *node) |
Check if a CYPHER_AST_SHORTEST_PATH node is for a single path. More... | |
const cypher_astnode_t * | cypher_ast_shortest_path_get_path (const cypher_astnode_t *node) |
Get the unnamed pattern path from a CYPHER_AST_SHORTEST_PATH node. More... | |
cypher_astnode_t * | cypher_ast_pattern_path (cypher_astnode_t *const *elements, unsigned int nelements, cypher_astnode_t **children, unsigned int nchildren, struct cypher_input_range range) |
Construct a CYPHER_AST_PATTERN_PATH node. More... | |
unsigned int | cypher_ast_pattern_path_nelements (const cypher_astnode_t *node) |
Get the number of elements in a CYPHER_AST_PATTERN_PATH node. More... | |
const cypher_astnode_t * | cypher_ast_pattern_path_get_element (const cypher_astnode_t *node, unsigned int index) |
Get an element from a CYPHER_AST_PATTERN_PATH node. More... | |
cypher_astnode_t * | cypher_ast_node_pattern (const cypher_astnode_t *identifier, cypher_astnode_t *const *labels, unsigned int nlabels, const cypher_astnode_t *properties, cypher_astnode_t **children, unsigned int nchildren, struct cypher_input_range range) |
Construct a CYPHER_AST_NODE_PATTERN node. More... | |
const cypher_astnode_t * | cypher_ast_node_pattern_get_identifier (const cypher_astnode_t *node) |
Get the identifier of a CYPHER_AST_NODE_PATTERN node. More... | |
unsigned int | cypher_ast_node_pattern_nlabels (const cypher_astnode_t *node) |
Get the number of labels in a CYPHER_AST_NODE_PATTERN node. More... | |
const cypher_astnode_t * | cypher_ast_node_pattern_get_label (const cypher_astnode_t *node, unsigned int index) |
Get a label from a CYPHER_AST_NODE_PATTERN node. More... | |
const cypher_astnode_t * | cypher_ast_node_pattern_get_properties (const cypher_astnode_t *node) |
Get the properties of a CYPHER_AST_NODE_PATTERN node. More... | |
cypher_astnode_t * | cypher_ast_rel_pattern (enum cypher_rel_direction direction, const cypher_astnode_t *identifier, cypher_astnode_t *const *reltypes, unsigned int nreltypes, const cypher_astnode_t *properties, const cypher_astnode_t *varlength, cypher_astnode_t **children, unsigned int nchildren, struct cypher_input_range range) |
Construct a CYPHER_AST_REL_PATTERN node. More... | |
enum cypher_rel_direction | cypher_ast_rel_pattern_get_direction (const cypher_astnode_t *node) |
Get the direction of a CYPHER_AST_REL_PATTERN node. More... | |
const cypher_astnode_t * | cypher_ast_rel_pattern_get_identifier (const cypher_astnode_t *node) |
Get the identifier of a CYPHER_AST_REL_PATTERN node. More... | |
unsigned int | cypher_ast_rel_pattern_nreltypes (const cypher_astnode_t *node) |
Get the number of reltypes in a CYPHER_AST_REL_PATTERN node. More... | |
const cypher_astnode_t * | cypher_ast_rel_pattern_get_reltype (const cypher_astnode_t *node, unsigned int index) |
Get a reltypes from a CYPHER_AST_REL_PATTERN node. More... | |
const cypher_astnode_t * | cypher_ast_rel_pattern_get_varlength (const cypher_astnode_t *node) |
Get the varlength range of a CYPHER_AST_REL_PATTERN node. More... | |
const cypher_astnode_t * | cypher_ast_rel_pattern_get_properties (const cypher_astnode_t *node) |
Get the properties of a CYPHER_AST_REL_PATTERN node. More... | |
cypher_astnode_t * | cypher_ast_range (const cypher_astnode_t *start, const cypher_astnode_t *end, cypher_astnode_t **children, unsigned int nchildren, struct cypher_input_range range) |
Construct a CYPHER_AST_RANGE node. More... | |
const cypher_astnode_t * | cypher_ast_range_get_start (const cypher_astnode_t *node) |
Get the start of a CYPHER_AST_RANGE node. More... | |
const cypher_astnode_t * | cypher_ast_range_get_end (const cypher_astnode_t *node) |
Get the end of a CYPHER_AST_RANGE node. More... | |
cypher_astnode_t * | cypher_ast_command (const cypher_astnode_t *name, cypher_astnode_t *const *args, unsigned int nargs, cypher_astnode_t **children, unsigned int nchildren, struct cypher_input_range range) |
Construct a CYPHER_AST_COMMAND node. More... | |
const cypher_astnode_t * | cypher_ast_command_get_name (const cypher_astnode_t *node) |
Get the name from a CYPHER_AST_COMMAND node. More... | |
unsigned int | cypher_ast_command_narguments (const cypher_astnode_t *node) |
Get the number of arguments from a CYPHER_AST_COMMAND node. More... | |
const cypher_astnode_t * | cypher_ast_command_get_argument (const cypher_astnode_t *node, unsigned int index) |
Get an argument from a CYPHER_AST_COMMAND node. More... | |
cypher_astnode_t * | cypher_ast_line_comment (const char *s, size_t n, struct cypher_input_range range) |
Construct a CYPHER_AST_LINE_COMMENT node. More... | |
const char * | cypher_ast_line_comment_get_value (const cypher_astnode_t *node) |
Get a null terminated string for a CYPHER_AST_LINE_COMMENT node. More... | |
cypher_astnode_t * | cypher_ast_block_comment (const char *s, size_t n, struct cypher_input_range range) |
Construct a CYPHER_AST_BLOCK_COMMENT node. More... | |
const char * | cypher_ast_block_comment_get_value (const cypher_astnode_t *node) |
Get a null terminated string for a CYPHER_AST_BLOCK_COMMENT node. More... | |
cypher_astnode_t * | cypher_ast_error (const char *s, size_t n, struct cypher_input_range range) |
Construct a CYPHER_AST_ERROR node. More... | |
const char * | cypher_ast_error_get_value (const cypher_astnode_t *node) |
Get a null terminated string for a CYPHER_AST_ERROR node. More... | |
void | cypher_ast_free (cypher_astnode_t *ast) |
Release an entire AST tree. More... | |
int | cypher_ast_fprint (const cypher_astnode_t *ast, FILE *stream, unsigned int width, const struct cypher_parser_colorization *colorization, uint_fast32_t flags) |
Print a represetation of an AST to a stream. More... | |
cypher_parser_config_t * | cypher_parser_new_config (void) |
Generate a new parser configuration. More... | |
void | cypher_parser_config_free (cypher_parser_config_t *config) |
Release a parser configuration. More... | |
void | cypher_parser_config_set_initial_position (cypher_parser_config_t *config, struct cypher_input_position position) |
Set the initial input position for parsing. More... | |
void | cypher_parser_config_set_initial_ordinal (cypher_parser_config_t *config, unsigned int n) |
Set the initial ordinal for parsing. More... | |
void | cypher_parser_config_set_error_colorization (cypher_parser_config_t *config, const struct cypher_parser_colorization *colorization) |
Set the colorization scheme for error messages. More... | |
int | cypher_uparse_each (const char *s, size_t n, cypher_parser_segment_callback_t callback, void *userdata, struct cypher_input_position *last, cypher_parser_config_t *config, uint_fast32_t flags) |
Parse segments from a string. More... | |
cypher_parse_result_t * | cypher_uparse (const char *s, size_t n, struct cypher_input_position *last, cypher_parser_config_t *config, uint_fast32_t flags) |
Parse a statement or command from a string. More... | |
int | cypher_fparse_each (FILE *stream, cypher_parser_segment_callback_t callback, void *userdata, struct cypher_input_position *last, cypher_parser_config_t *config, uint_fast32_t flags) |
Parse segments from a stream. More... | |
cypher_parse_result_t * | cypher_fparse (FILE *stream, struct cypher_input_position *last, cypher_parser_config_t *config, uint_fast32_t flags) |
Parse a statement or command from a stream. More... | |
struct cypher_input_range | cypher_parse_segment_get_range (const cypher_parse_segment_t *segment) |
Get the range of a parse segment. More... | |
unsigned int | cypher_parse_segment_nerrors (const cypher_parse_segment_t *segment) |
Get the number of errors encountered in a parse segment. More... | |
const cypher_parse_error_t * | cypher_parse_segment_get_error (const cypher_parse_segment_t *segment, unsigned int index) |
Get an error from a parse segment. More... | |
unsigned int | cypher_parse_segment_nroots (const cypher_parse_segment_t *segment) |
Get the number of root AST nodes parsed in a segment. More... | |
const cypher_astnode_t * | cypher_parse_segment_get_root (const cypher_parse_segment_t *segment, unsigned int index) |
Get a root AST node from a parse segment. More... | |
unsigned int | cypher_parse_segment_nnodes (const cypher_parse_segment_t *segment) |
Get the total number of AST nodes parsed in a segment. More... | |
const cypher_astnode_t * | cypher_parse_segment_get_directive (const cypher_parse_segment_t *segment) |
Get the statement or client command parsed in a segment. More... | |
bool | cypher_parse_segment_is_eof (const cypher_parse_segment_t *segment) |
Check if the parse encountered the end of the input. More... | |
int | cypher_parse_segment_fprint_ast (const cypher_parse_segment_t *segment, FILE *stream, unsigned int width, const struct cypher_parser_colorization *colorization, uint_fast32_t flags) |
Print a represetation of the AST from a parse segment to a stream. More... | |
void | cypher_parse_segment_retain (cypher_parse_segment_t *segment) |
Retain a reference to a parse segment. More... | |
void | cypher_parse_segment_release (cypher_parse_segment_t *segment) |
Release a reference to a parse segment. More... | |
unsigned int | cypher_parse_result_nroots (const cypher_parse_result_t *result) |
Get the number of root AST nodes parsed. More... | |
const cypher_astnode_t * | cypher_parse_result_get_root (const cypher_parse_result_t *result, unsigned int index) |
Get a root AST nodes from a parse result. More... | |
unsigned int | cypher_parse_result_nnodes (const cypher_parse_result_t *result) |
Get the total number of AST nodes parsed. More... | |
unsigned int | cypher_parse_result_ndirectives (const cypher_parse_result_t *result) |
Get the number of statements or commands parsed. More... | |
const cypher_astnode_t * | cypher_parse_result_get_directive (const cypher_parse_result_t *result, unsigned int index) |
Get the AST for a parsed statement or command from a parse result. More... | |
unsigned int | cypher_parse_result_nerrors (const cypher_parse_result_t *result) |
Get the number of errors encountered during parsing. More... | |
const cypher_parse_error_t * | cypher_parse_result_get_error (const cypher_parse_result_t *result, unsigned int index) |
Get an error description from a parse result. More... | |
bool | cypher_parse_result_eof (const cypher_parse_result_t *result) |
Check if the parse encountered the end of the input. More... | |
int | cypher_parse_result_fprint_ast (const cypher_parse_result_t *result, FILE *stream, unsigned int width, const struct cypher_parser_colorization *colorization, uint_fast32_t flags) |
Print a represetation of a parse result to a stream. More... | |
void | cypher_parse_result_free (cypher_parse_result_t *result) |
Free memory associated with a parse result. More... | |
struct cypher_input_position | cypher_parse_error_position (const cypher_parse_error_t *error) |
Get the position of an error. More... | |
const char * | cypher_parse_error_message (const cypher_parse_error_t *error) |
Get the error message of an error. More... | |
const char * | cypher_parse_error_context (const cypher_parse_error_t *error) |
Get the error context of an error. More... | |
size_t | cypher_parse_error_context_offset (const cypher_parse_error_t *error) |
Get the offset into the context of an error. More... | |
int | cypher_quick_uparse (const char *s, size_t n, cypher_parser_quick_segment_callback_t callback, void *userdata, uint_fast32_t flags) |
Quick parse segments from a string. More... | |
int | cypher_quick_fparse (FILE *stream, cypher_parser_quick_segment_callback_t callback, void *userdata, uint_fast32_t flags) |
Quick parse a statement or command from a stream. More... | |
bool | cypher_quick_parse_segment_is_statement (const cypher_quick_parse_segment_t *segment) |
Check if the quick parse segment is for a statement. More... | |
bool | cypher_quick_parse_segment_is_command (const cypher_quick_parse_segment_t *segment) |
Check if the quick parse segment is for a command. More... | |
const char * | cypher_quick_parse_segment_get_text (const cypher_quick_parse_segment_t *segment, size_t *n) |
Get the character string of a segment. More... | |
struct cypher_input_range | cypher_quick_parse_segment_get_range (const cypher_quick_parse_segment_t *segment) |
Get the range of a quick parse segment. More... | |
struct cypher_input_position | cypher_quick_parse_segment_get_next (const cypher_quick_parse_segment_t *segment) |
Get the next input position that will be parsed. More... | |
bool | cypher_quick_parse_segment_is_eof (const cypher_quick_parse_segment_t *segment) |
Check if the quick parse encountered the end of the input. More... | |
int | cypher_parse_each (const char *s, cypher_parser_segment_callback_t callback, void *userdata, struct cypher_input_position *last, cypher_parser_config_t *config, uint_fast32_t flags) |
Parse segments from a string. More... | |
cypher_parse_result_t * | cypher_parse (const char *s, struct cypher_input_position *last, cypher_parser_config_t *config, uint_fast32_t flags) |
Parse a command or statement from a string. More... | |
int | cypher_quick_parse (const char *s, cypher_parser_quick_segment_callback_t callback, void *userdata, uint_fast32_t flags) |
Quick parse segments from a string. More... | |
cypher_astnode_t* cypher_ast_all | ( | const cypher_astnode_t * | identifier, |
const cypher_astnode_t * | expression, | ||
const cypher_astnode_t * | predicate, | ||
cypher_astnode_t ** | children, | ||
unsigned int | nchildren, | ||
struct cypher_input_range | range | ||
) |
Construct a CYPHER_AST_ALL
node.
The node will also be an instance of CYPHER_AST_LIST_COMPREHENSION
.
[identifier] | A CYPHER_AST_IDENTIFIER node. |
[expression] | A CYPHER_AST_EXPRESSION node. |
[predicate] | A CYPHER_AST_EXPRESSION node, or null. |
[children] | The children of the node. |
[nchildren] | The number of children. |
[range] | The input range. |
cypher_astnode_t* cypher_ast_all_nodes_scan | ( | const cypher_astnode_t * | identifier, |
cypher_astnode_t ** | children, | ||
unsigned int | nchildren, | ||
struct cypher_input_range | range | ||
) |
Construct a CYPHER_AST_ALL_NODES_SCAN
node.
The node will also be an instance of CYPHER_AST_START_POINT
.
[identifier] | A CYPHER_AST_IDENTIFIER node. |
[children] | The children of the node. |
[nchildren] | The number of children. |
[range] | The input range. |
const cypher_astnode_t* cypher_ast_all_nodes_scan_get_identifier | ( | const cypher_astnode_t * | node | ) |
Get the identifier of a CYPHER_AST_ALL_NODES_SCAN
node.
If the node is not an instance of CYPHER_AST_ALL_NODES_SCAN
then the result will be undefined.
[node] | The AST node. |
CYPHER_AST_IDENTIFIER
node. cypher_astnode_t* cypher_ast_all_rels_scan | ( | const cypher_astnode_t * | identifier, |
cypher_astnode_t ** | children, | ||
unsigned int | nchildren, | ||
struct cypher_input_range | range | ||
) |
Construct a CYPHER_AST_ALL_RELS_SCAN
node.
The node will also be an instance of CYPHER_AST_START_POINT
.
[identifier] | A CYPHER_AST_IDENTIFIER node. |
[children] | The children of the node. |
[nchildren] | The number of children. |
[range] | The input range. |
const cypher_astnode_t* cypher_ast_all_rels_scan_get_identifier | ( | const cypher_astnode_t * | node | ) |
Get the identifier of a CYPHER_AST_ALL_RELS_SCAN
node.
If the node is not an instance of CYPHER_AST_ALL_RELS_SCAN
then the result will be undefined.
[node] | The AST node. |
CYPHER_AST_IDENTIFIER
node. cypher_astnode_t* cypher_ast_any | ( | const cypher_astnode_t * | identifier, |
const cypher_astnode_t * | expression, | ||
const cypher_astnode_t * | predicate, | ||
cypher_astnode_t ** | children, | ||
unsigned int | nchildren, | ||
struct cypher_input_range | range | ||
) |
Construct a CYPHER_AST_ANY
node.
The node will also be an instance of CYPHER_AST_LIST_COMPREHENSION
.
[identifier] | A CYPHER_AST_IDENTIFIER node. |
[expression] | A CYPHER_AST_EXPRESSION node. |
[predicate] | A CYPHER_AST_EXPRESSION node, or null. |
[children] | The children of the node. |
[nchildren] | The number of children. |
[range] | The input range. |
cypher_astnode_t* cypher_ast_apply_all_operator | ( | const cypher_astnode_t * | func_name, |
bool | distinct, | ||
cypher_astnode_t ** | children, | ||
unsigned int | nchildren, | ||
struct cypher_input_range | range | ||
) |
Construct a CYPHER_AST_APPLY_ALL_OPERATOR
node.
The node will also be an instance of CYPHER_AST_EXPRESSION
.
[func_name] | A CYPHER_AST_FUNCTION_NAME node. |
[distinct] | true if the function removes duplicate results. |
[children] | The children of the node. |
[nchildren] | The number of children. |
[range] | The input range. |
bool cypher_ast_apply_all_operator_get_distinct | ( | const cypher_astnode_t * | node | ) |
Check if a CYPHER_AST_APPLY_ALL_OPERATOR
node is DISTINCT
.
If the node is not an instance of CYPHER_AST_APPLY_ALL_OPERATOR
then the result will be undefined.
[node] | The AST node. |
true
if DISTINCT
is specified, and false
otherwise. const cypher_astnode_t* cypher_ast_apply_all_operator_get_func_name | ( | const cypher_astnode_t * | node | ) |
Get the function name of a CYPHER_AST_APPLY_ALL_OPERATOR
node.
If the node is not an instance of CYPHER_AST_APPLY_ALL_OPERATOR
then the result will be undefined.
[node] | The AST node. |
CYPHER_AST_FUNCTION_NAME
node. cypher_astnode_t* cypher_ast_apply_operator | ( | const cypher_astnode_t * | func_name, |
bool | distinct, | ||
cypher_astnode_t *const * | args, | ||
unsigned int | nargs, | ||
cypher_astnode_t ** | children, | ||
unsigned int | nchildren, | ||
struct cypher_input_range | range | ||
) |
Construct a CYPHER_AST_APPLY_OPERATOR
node.
The node will also be an instance of CYPHER_AST_EXPRESSION
.
[func_name] | A CYPHER_AST_FUNCTION_NAME node. |
[distinct] | true if the DISTINCT keyword is specified. |
[args] | An array of CYPHER_AST_EXPRESSION nodes. |
[nargs] | The number of args. |
[children] | The children of the node. |
[nchildren] | The number of children. |
[range] | The input range. |
const cypher_astnode_t* cypher_ast_apply_operator_get_argument | ( | const cypher_astnode_t * | node, |
unsigned int | index | ||
) |
Get an argument of a CYPHER_AST_APPLY_OPERATOR
node.
If the node is not an instance of CYPHER_AST_APPLY_OPERATOR
then the result will be undefined.
[node] | The AST node. |
[index] | The index of the argument. |
CYPHER_AST_EXPRESSION
node. bool cypher_ast_apply_operator_get_distinct | ( | const cypher_astnode_t * | node | ) |
Check if a CYPHER_AST_APPLY_OPERATOR
node is DISTINCT
.
If the node is not an instance of CYPHER_AST_APPLY_OPERATOR
then the result will be undefined.
[node] | The AST node. |
true
if DISTINCT
is specified, and false
otherwise. const cypher_astnode_t* cypher_ast_apply_operator_get_func_name | ( | const cypher_astnode_t * | node | ) |
Get the function name of a CYPHER_AST_APPLY_OPERATOR
node.
If the node is not an instance of CYPHER_AST_APPLY_OPERATOR
then the result will be undefined.
[node] | The AST node. |
CYPHER_AST_FUNCTION_NAME
node. unsigned int cypher_ast_apply_operator_narguments | ( | const cypher_astnode_t * | node | ) |
Get the number of arguments of a CYPHER_AST_APPLY_OPERATOR
node.
If the node is not an instance of CYPHER_AST_APPLY_OPERATOR
then the result will be undefined.
[node] | The AST node. |
cypher_astnode_t* cypher_ast_binary_operator | ( | const cypher_operator_t * | op, |
const cypher_astnode_t * | arg1, | ||
const cypher_astnode_t * | arg2, | ||
cypher_astnode_t ** | children, | ||
unsigned int | nchildren, | ||
struct cypher_input_range | range | ||
) |
Construct a CYPHER_AST_BINARY_OPERATOR
node.
The node will also be an instance of CYPHER_AST_EXPRESSION
.
[op] | The operator. |
[arg1] | The first (left) argument to the binary operator, of type CYPHER_AST_EXPRESSION . |
[arg2] | The second (right) argument to the binary operator, of type CYPHER_AST_EXPRESSION . |
[children] | The children of the node. |
[nchildren] | The number of children. |
[range] | The input range. |
const cypher_astnode_t* cypher_ast_binary_operator_get_argument1 | ( | const cypher_astnode_t * | node | ) |
Get the first (left) argument of a CYPHER_AST_BINARY_OPERATOR
node.
If the node is not an instance of CYPHER_AST_BINARY_OPERATOR
then the result will be undefined.
[node] | The AST node. |
CYPHER_AST_EXPRESSION
. const cypher_astnode_t* cypher_ast_binary_operator_get_argument2 | ( | const cypher_astnode_t * | node | ) |
Get the second (right) argument of a CYPHER_AST_BINARY_OPERATOR
node.
If the node is not an instance of CYPHER_AST_BINARY_OPERATOR
then the result will be undefined.
[node] | The AST node. |
CYPHER_AST_EXPRESSION
. const cypher_operator_t* cypher_ast_binary_operator_get_operator | ( | const cypher_astnode_t * | node | ) |
Get the operator of a CYPHER_AST_BINARY_OPERATOR
node.
If the node is not an instance of CYPHER_AST_BINARY_OPERATOR
then the result will be undefined.
[node] | The AST node. |
cypher_astnode_t* cypher_ast_block_comment | ( | const char * | s, |
size_t | n, | ||
struct cypher_input_range | range | ||
) |
Construct a CYPHER_AST_BLOCK_COMMENT
node.
The node will also be an instance of CYPHER_AST_COMMENT
.
[s] | A pointer to a character string containing the comment. |
[n] | The length of the character string. |
[range] | The input range. |
const char* cypher_ast_block_comment_get_value | ( | const cypher_astnode_t * | node | ) |
Get a null terminated string for a CYPHER_AST_BLOCK_COMMENT
node.
If the node is not an instance of CYPHER_AST_BLOCK_COMMENT
then the result will be undefined.
[node] | The AST node. |
cypher_astnode_t* cypher_ast_call | ( | const cypher_astnode_t * | proc_name, |
cypher_astnode_t *const * | args, | ||
unsigned int | nargs, | ||
cypher_astnode_t *const * | projections, | ||
unsigned int | nprojections, | ||
cypher_astnode_t ** | children, | ||
unsigned int | nchildren, | ||
struct cypher_input_range | range | ||
) |
Construct a CYPHER_AST_CALL
node.
The node will also be an instance of CYPHER_AST_CLAUSE
.
[proc_name] | A CYPHER_AST_PROC_NAME node. |
[args] | An array of CYPHER_AST_EXPRESSION nodes. |
[nargs] | The number of args. |
[projections] | Projections for with, all of type CYPHER_AST_PROJECTION . |
[nprojections] | The number of projections. |
[children] | The children of the node. |
[nchildren] | The number of children. |
[range] | The input range. |
const cypher_astnode_t* cypher_ast_call_get_argument | ( | const cypher_astnode_t * | node, |
unsigned int | index | ||
) |
Get an argument of a CYPHER_AST_CALL
node.
If the node is not an instance of CYPHER_AST_CALL
then the result will be undefined.
[node] | The AST node. |
[index] | The index of the argument. |
CYPHER_AST_EXPRESSION
node. const cypher_astnode_t* cypher_ast_call_get_proc_name | ( | const cypher_astnode_t * | node | ) |
Get the proc name of a CYPHER_AST_CALL
node.
If the node is not an instance of CYPHER_AST_CALL
then the result will be undefined.
[node] | The AST node. |
CYPHER_AST_PROC_NAME
node. const cypher_astnode_t* cypher_ast_call_get_projection | ( | const cypher_astnode_t * | node, |
unsigned int | index | ||
) |
Get a projection of a CYPHER_AST_CALL
node.
If the node is not an instance of CYPHER_AST_CALL
then the result will be undefined.
[node] | The AST node. |
[index] | The index of the projection. |
CYPHER_AST_PROJECTION
node. unsigned int cypher_ast_call_narguments | ( | const cypher_astnode_t * | node | ) |
Get the number of arguments of a CYPHER_AST_CALL
node.
If the node is not an instance of CYPHER_AST_CALL
then the result will be undefined.
[node] | The AST node. |
unsigned int cypher_ast_call_nprojections | ( | const cypher_astnode_t * | node | ) |
Get the number of projections of a CYPHER_AST_CALL
node.
If the node is not an instance of CYPHER_AST_CALL
then the result will be undefined.
[node] | The AST node. |
cypher_astnode_t* cypher_ast_case | ( | const cypher_astnode_t * | expression, |
cypher_astnode_t *const * | alternatives, | ||
unsigned int | nalternatives, | ||
const cypher_astnode_t * | deflt, | ||
cypher_astnode_t ** | children, | ||
unsigned int | nchildren, | ||
struct cypher_input_range | range | ||
) |
Construct a CYPHER_AST_CASE
node.
The node will also be an instance of CYPHER_AST_EXPRESSION
.
[expression] | A CYPHER_AST_EXPRESSION node. |
[alternatives] | An alternating list of predicate expressions and values, all of type CYPHER_AST_EXPRESSION . |
[nalternatives] | The number of predicate and result pairs. |
[deflt] | A CYPHER_AST_EXPRESSION node, or NULL . |
[children] | The children of the node. |
[nchildren] | The number of children. |
[range] | The input range. |
const cypher_astnode_t* cypher_ast_case_get_default | ( | const cypher_astnode_t * | node | ) |
Get the default from a CYPHER_AST_CASE
node.
If the node is not an instance of CYPHER_AST_CASE
then the result will be undefined.
[node] | The AST node. |
CYPHER_AST_EXPRESSION
node, or null. const cypher_astnode_t* cypher_ast_case_get_expression | ( | const cypher_astnode_t * | node | ) |
Get the expression from a CYPHER_AST_CASE
node.
If the node is not an instance of CYPHER_AST_CASE
then the result will be undefined.
[node] | The AST node. |
CYPHER_AST_EXPRESSION
node. const cypher_astnode_t* cypher_ast_case_get_predicate | ( | const cypher_astnode_t * | node, |
unsigned int | index | ||
) |
Get a predicate from a CYPHER_AST_CASE
node.
If the node is not an instance of CYPHER_AST_CASE
then the result will be undefined.
[node] | The AST node. |
[index] | The index of the alternative. |
CYPHER_AST_EXPRESSION
node, or null. const cypher_astnode_t* cypher_ast_case_get_value | ( | const cypher_astnode_t * | node, |
unsigned int | index | ||
) |
Get a value from a CYPHER_AST_CASE
node.
If the node is not an instance of CYPHER_AST_CASE
then the result will be undefined.
[node] | The AST node. |
[index] | The index of the alternative. |
CYPHER_AST_EXPRESSION
node, or null. unsigned int cypher_ast_case_nalternatives | ( | const cypher_astnode_t * | node | ) |
Get the number of alternatives from a CYPHER_AST_CASE
node.
If the node is not an instance of CYPHER_AST_CASE
then the result will be undefined.
[node] | The AST node. |
cypher_astnode_t* cypher_ast_collection | ( | cypher_astnode_t *const * | elements, |
unsigned int | nelements, | ||
cypher_astnode_t ** | children, | ||
unsigned int | nchildren, | ||
struct cypher_input_range | range | ||
) |
Construct a CYPHER_AST_COLLECTION
node.
The node will also be an instance of CYPHER_AST_EXPRESSION
.
[elements] | The elements for the collection. |
[nelements] | The number of elements. |
[children] | The children of the node. |
[nchildren] | The number of children. |
[range] | The input range. |
const cypher_astnode_t* cypher_ast_collection_get | ( | const cypher_astnode_t * | node, |
unsigned int | index | ||
) |
Get an element from a CYPHER_AST_COLLECTION
node.
If the node is not an instance of CYPHER_AST_COLLECTION
then the result will be undefined.
[node] | The AST node. |
[index] | The index of the element. |
NULL
if there is no element at the specified index. unsigned int cypher_ast_collection_length | ( | const cypher_astnode_t * | node | ) |
Get the collection length from a CYPHER_AST_COLLECTION
node.
If the node is not an instance of CYPHER_AST_COLLECTION
then the result will be undefined.
[node] | The AST node. |
cypher_astnode_t* cypher_ast_command | ( | const cypher_astnode_t * | name, |
cypher_astnode_t *const * | args, | ||
unsigned int | nargs, | ||
cypher_astnode_t ** | children, | ||
unsigned int | nchildren, | ||
struct cypher_input_range | range | ||
) |
Construct a CYPHER_AST_COMMAND
node.
[name] | A CYPHER_AST_STRING node. |
[args] | Arguments for the command, all of type CYPHER_AST_STRING . |
[nargs] | The number of clauses. |
[children] | The children of the node. |
[nchildren] | The number of children. |
[range] | The input range. |
const cypher_astnode_t* cypher_ast_command_get_argument | ( | const cypher_astnode_t * | node, |
unsigned int | index | ||
) |
Get an argument from a CYPHER_AST_COMMAND node.
If the node is not an instance of CYPHER_AST_COMMAND
then the result will be undefined.
[node] | The AST node. |
[index] | The index of the argument. |
CYPHER_AST_STRING
, or NULL
if there is no argument at the specified index. const cypher_astnode_t* cypher_ast_command_get_name | ( | const cypher_astnode_t * | node | ) |
Get the name from a CYPHER_AST_COMMAND node.
If the node is not an instance of CYPHER_AST_COMMAND
then the result will be undefined.
[node] | The AST node. |
CYPHER_AST_STRING
. unsigned int cypher_ast_command_narguments | ( | const cypher_astnode_t * | node | ) |
Get the number of arguments from a CYPHER_AST_COMMAND node.
If the node is not an instance of CYPHER_AST_COMMAND
then the result will be undefined.
[node] | The AST node. |
cypher_astnode_t* cypher_ast_comparison | ( | unsigned int | length, |
const cypher_operator_t *const * | ops, | ||
cypher_astnode_t *const * | args, | ||
cypher_astnode_t ** | children, | ||
unsigned int | nchildren, | ||
struct cypher_input_range | range | ||
) |
Construct a CYPHER_AST_COMPARISON
node.
The node will also be an instance of CYPHER_AST_EXPRESSION
.
[length] | The length of the comparison chain. |
[ops] | The operators in the comparison chain, which must be length pointers. |
[args] | The arguments in the comparison chain, which must be length+1 pointers all of type CYPHER_AST_EXPRESSION . |
[children] | The children of the node. |
[nchildren] | The number of children. |
[range] | The input range. |
const cypher_astnode_t* cypher_ast_comparison_get_argument | ( | const cypher_astnode_t * | node, |
unsigned int | pos | ||
) |
Get the argument in the chain of a CYPHER_AST_COMPARISON
node.
If the node is not an instance of CYPHER_AST_COMPARISON
then the result will be undefined.
[node] | The AST node. |
[pos] | The position in the comparison chain. |
CYPHER_AST_EXPRESSION
node at the specified position in the chain, or null if the position is greater than the chain length. unsigned int cypher_ast_comparison_get_length | ( | const cypher_astnode_t * | node | ) |
Get the comparsion chain length of a CYPHER_AST_COMPARISON
node.
If the node is not an instance of CYPHER_AST_COMPARISON
then the result will be undefined.
[node] | The AST node. |
const cypher_operator_t* cypher_ast_comparison_get_operator | ( | const cypher_astnode_t * | node, |
unsigned int | pos | ||
) |
Get an operator in the chain of a CYPHER_AST_COMPARISON
node.
If the node is not an instance of CYPHER_AST_COMPARISON
then the result will be undefined.
[node] | The AST node. |
[pos] | The position in the comparison chain. |
cypher_astnode_t* cypher_ast_create | ( | bool | unique, |
const cypher_astnode_t * | pattern, | ||
cypher_astnode_t ** | children, | ||
unsigned int | nchildren, | ||
struct cypher_input_range | range | ||
) |
Construct a CYPHER_AST_CREATE
node.
The node will also be an instance of CYPHER_AST_CLAUSE
.
[unique] | true if the create is unique, false otherwise. |
[pattern] | A CYPHER_AST_PATTERN node. |
[children] | The children of the node. |
[nchildren] | The number of children. |
[range] | The input range. |
const cypher_astnode_t* cypher_ast_create_get_pattern | ( | const cypher_astnode_t * | node | ) |
Get the pattern of a CYPHER_AST_CREATE
node.
If the node is not an instance of CYPHER_AST_CREATE
then the result will be undefined.
[node] | The AST node. |
CYPHER_AST_PATTERN
node. bool cypher_ast_create_is_unique | ( | const cypher_astnode_t * | node | ) |
Check if the unique value of a CYPHER_AST_CREATE
node is set.
If the node is not an instance of CYPHER_AST_CREATE
then the result will be undefined.
[node] | The AST node. |
true
if the UNIQUE
option is enabled, and false
otherwise. cypher_astnode_t* cypher_ast_create_node_prop_constraint | ( | const cypher_astnode_t * | identifier, |
const cypher_astnode_t * | label, | ||
const cypher_astnode_t * | expression, | ||
bool | unique, | ||
cypher_astnode_t ** | children, | ||
unsigned int | nchildren, | ||
struct cypher_input_range | range | ||
) |
Construct a CYPHER_AST_CREATE_NODE_PROP_CONSTRAINT
node.
The node will also be an instance of CYPHER_AST_SCHEMA_COMMAND
.
[identifier] | A CYPHER_AST_IDENTIFIER node. |
[label] | A CYPHER_AST_LABEL node. |
[expression] | A CYPHER_AST_EXPRESSION node. |
[unique] | true if the constraint is unique, and false otherwise. |
[children] | The children of the node. |
[nchildren] | The number of children. |
[range] | The input range. |
const cypher_astnode_t* cypher_ast_create_node_prop_constraint_get_expression | ( | const cypher_astnode_t * | node | ) |
Get the expression of a CYPHER_AST_CREATE_NODE_PROP_CONSTRAINT
node.
If the node is not an instance of CYPHER_AST_CREATE_NODE_PROP_CONSTRAINT
then the result will be undefined.
[node] | The AST node. |
CYPHER_AST_EXPRESSION
node. const cypher_astnode_t* cypher_ast_create_node_prop_constraint_get_identifier | ( | const cypher_astnode_t * | node | ) |
Get the identifier of a CYPHER_AST_CREATE_NODE_PROP_CONSTRAINT
node.
If the node is not an instance of CYPHER_AST_CREATE_NODE_PROP_CONSTRAINT
then the result will be undefined.
[node] | The AST node. |
CYPHER_AST_IDENTIFIER
node. const cypher_astnode_t* cypher_ast_create_node_prop_constraint_get_label | ( | const cypher_astnode_t * | node | ) |
Get the label of a CYPHER_AST_CREATE_NODE_PROP_CONSTRAINT
node.
If the node is not an instance of CYPHER_AST_CREATE_NODE_PROP_CONSTRAINT
then the result will be undefined.
[node] | The AST node. |
CYPHER_AST_LABEL
node. bool cypher_ast_create_node_prop_constraint_is_unique | ( | const cypher_astnode_t * | node | ) |
Check if the constraint of a CYPHER_AST_CREATE_NODE_PROP_CONSTRAINT
node is unique.
If the node is not an instance of CYPHER_AST_CREATE_NODE_PROP_CONSTRAINT
then the result will be undefined.
[node] | The AST node. |
true
if the constraint is unique, and false
otherwise. cypher_astnode_t* cypher_ast_create_node_prop_index | ( | const cypher_astnode_t * | label, |
const cypher_astnode_t * | prop_name, | ||
cypher_astnode_t ** | children, | ||
unsigned int | nchildren, | ||
struct cypher_input_range | range | ||
) |
Construct a CYPHER_AST_CREATE_NODE_PROP_INDEX
node.
The node will also be an instance of CYPHER_AST_SCHEMA_COMMAND
.
[label] | A label node, of type CYPHER_AST_LABEL . |
[prop_name] | A property name node, of type CYPHER_AST_PROP_NAME . |
[children] | The children of the node. |
[nchildren] | The number of children. |
[range] | The input range. |
const cypher_astnode_t* cypher_ast_create_node_prop_index_get_label | ( | const cypher_astnode_t * | node | ) |
Get the label of a CYPHER_AST_CREATE_NODE_PROP_INDEX
node.
If the node is not an instance of CYPHER_AST_CREATE_NODE_PROP_INDEX
then the result will be undefined.
[node] | The AST node. |
CYPHER_AST_LABEL
node. const cypher_astnode_t* cypher_ast_create_node_prop_index_get_prop_name | ( | const cypher_astnode_t * | node | ) |
Get the property name of a CYPHER_AST_CREATE_NODE_PROP_INDEX
node.
If the node is not an instance of CYPHER_AST_CREATE_NODE_PROP_INDEX
then the result will be undefined.
[node] | The AST node. |
CYPHER_AST_PROP_NAME
node. cypher_astnode_t* cypher_ast_create_rel_prop_constraint | ( | const cypher_astnode_t * | identifier, |
const cypher_astnode_t * | label, | ||
const cypher_astnode_t * | expression, | ||
bool | unique, | ||
cypher_astnode_t ** | children, | ||
unsigned int | nchildren, | ||
struct cypher_input_range | range | ||
) |
Construct a CYPHER_AST_CREATE_REL_PROP_CONSTRAINT
node.
The node will also be an instance of CYPHER_AST_SCHEMA_COMMAND
.
[identifier] | A CYPHER_AST_IDENTIFIER node. |
[label] | A CYPHER_AST_LABEL node. |
[expression] | A CYPHER_AST_EXPRESSION node. |
[unique] | true if the constraint is unique, and false otherwise. |
[children] | The children of the node. |
[nchildren] | The number of children. |
[range] | The input range. |
const cypher_astnode_t* cypher_ast_create_rel_prop_constraint_get_expression | ( | const cypher_astnode_t * | node | ) |
Get the expression of a CYPHER_AST_CREATE_REL_PROP_CONSTRAINT
node.
If the node is not an instance of CYPHER_AST_CREATE_REL_PROP_CONSTRAINT
then the result will be undefined.
[node] | The AST node. |
CYPHER_AST_EXPRESSION
node. const cypher_astnode_t* cypher_ast_create_rel_prop_constraint_get_identifier | ( | const cypher_astnode_t * | node | ) |
Get the identifier of a CYPHER_AST_CREATE_REL_PROP_CONSTRAINT
node.
If the node is not an instance of CYPHER_AST_CREATE_REL_PROP_CONSTRAINT
then the result will be undefined.
[node] | The AST node. |
CYPHER_AST_IDENTIFIER
node. const cypher_astnode_t* cypher_ast_create_rel_prop_constraint_get_reltype | ( | const cypher_astnode_t * | node | ) |
Get the relationship type of a CYPHER_AST_CREATE_REL_PROP_CONSTRAINT
node.
If the node is not an instance of CYPHER_AST_CREATE_REL_PROP_CONSTRAINT
then the result will be undefined.
[node] | The AST node. |
CYPHER_AST_RELTYPE
node. bool cypher_ast_create_rel_prop_constraint_is_unique | ( | const cypher_astnode_t * | node | ) |
Check if the constraint of a CYPHER_AST_CREATE_REL_PROP_CONSTRAINT
node is unique.
If the node is not an instance of CYPHER_AST_CREATE_REL_PROP_CONSTRAINT
then the result will be undefined.
[node] | The AST node. |
true
if the constraint is unique, and false
otherwise. cypher_astnode_t* cypher_ast_cypher_option | ( | const cypher_astnode_t * | version, |
cypher_astnode_t *const * | params, | ||
unsigned int | nparams, | ||
cypher_astnode_t ** | children, | ||
unsigned int | nchildren, | ||
struct cypher_input_range | range | ||
) |
Construct a CYPHER_AST_CYPHER_OPTION
node.
The node will also be an instance of CYPHER_AST_STATEMENT_OPTION
.
[version] | A version node of type CYPHER_AST_STRING , or null. |
[params] | Parameters for the option, all of type CYPHER_AST_CYPHER_OPTION_PARAM . |
[nparams] | The number of parameters (may be zero). |
[children] | The children of the node. |
[nchildren] | The number of children. |
[range] | The input range. |
const cypher_astnode_t* cypher_ast_cypher_option_get_param | ( | const cypher_astnode_t * | node, |
unsigned int | index | ||
) |
Get an option of a CYPHER_AST_CYPHER_OPTION
node.
If the node is not an instance of CYPHER_AST_CYPHER_OPTION
then the result will be undefined.
[node] | The AST node. |
[index] | The index of the parameter. |
CYPHER_AST_CYPHER_OPTION_PARAM
node, or null if no parameter is at the specified index. const cypher_astnode_t* cypher_ast_cypher_option_get_version | ( | const cypher_astnode_t * | node | ) |
Get the version of a CYPHER_AST_CYPHER_OPTION
node.
If the node is not an instance of CYPHER_AST_CYPHER_OPTION
then the result will be undefined.
[node] | The AST node. |
CYPHER_AST_STRING
node, or null. unsigned int cypher_ast_cypher_option_nparams | ( | const cypher_astnode_t * | node | ) |
Get the number of parameters in a CYPHER_AST_CYPHER_OPTION
node.
If the node is not an instance of CYPHER_AST_CYPHER_OPTION
then the result will be undefined.
[node] | The AST node. |
cypher_astnode_t* cypher_ast_cypher_option_param | ( | const cypher_astnode_t * | name, |
const cypher_astnode_t * | value, | ||
cypher_astnode_t ** | children, | ||
unsigned int | nchildren, | ||
struct cypher_input_range | range | ||
) |
Construct a CYPHER_AST_CYPHER_OPTION_PARAM
node.
[name] | A parameter name node, of type CYPHER_AST_STRING . |
[value] | A parameter value node, of type CYPHER_AST_STRING . |
[children] | The children of the node. |
[nchildren] | The number of children. |
[range] | The input range. |
const cypher_astnode_t* cypher_ast_cypher_option_param_get_name | ( | const cypher_astnode_t * | node | ) |
Get an name of a CYPHER_AST_CYPHER_OPTION_PARAM
node.
If the node is not an instance of CYPHER_AST_CYPHER_OPTION_PARAM
then the result will be undefined.
[node] | The AST node. |
CYPHER_AST_STRING
node. const cypher_astnode_t* cypher_ast_cypher_option_param_get_value | ( | const cypher_astnode_t * | node | ) |
Get an value of a CYPHER_AST_CYPHER_OPTION_PARAM
node.
If the node is not an instance of CYPHER_AST_CYPHER_OPTION_PARAM
then the result will be undefined.
[node] | The AST node. |
CYPHER_AST_STRING
node. cypher_astnode_t* cypher_ast_delete | ( | bool | detach, |
cypher_astnode_t *const * | expressions, | ||
unsigned int | nexpressions, | ||
cypher_astnode_t ** | children, | ||
unsigned int | nchildren, | ||
struct cypher_input_range | range | ||
) |
Construct a CYPHER_AST_DELETE
node.
The node will also be an instance of CYPHER_AST_CLAUSE
.
[detach] | true if the DETACH option is present, false otherwise. |
[expressions] | Expressions for DELETE , all of type CYPHER_AST_EXPRESSION . |
[nexpressions] | The number of expressions. |
[children] | The children of the node. |
[nchildren] | The number of children. |
[range] | The input range. |
const cypher_astnode_t* cypher_ast_delete_get_expression | ( | const cypher_astnode_t * | node, |
unsigned int | index | ||
) |
Get an expression from a CYPHER_AST_DELETE
node.
If the node is not an instance of CYPHER_AST_DELETE
then the result will be undefined.
[node] | The AST node. |
[index] | The index of the expression. |
CYPHER_AST_EXPRESSION
node, or null. bool cypher_ast_delete_has_detach | ( | const cypher_astnode_t * | node | ) |
Check if DETACH
is present for a CYPHER_AST_DELETE
node.
If the node is not an instance of CYPHER_AST_DELETE
then the result will be undefined.
[node] | The AST node. |
true
if DETACH
is present, false
otherwise. unsigned int cypher_ast_delete_nexpressions | ( | const cypher_astnode_t * | node | ) |
Get the number of expression in a CYPHER_AST_DELETE
node.
If the node is not an instance of CYPHER_AST_DELETE
then the result will be undefined.
[node] | The AST node. |
cypher_astnode_t* cypher_ast_drop_node_prop_constraint | ( | const cypher_astnode_t * | identifier, |
const cypher_astnode_t * | label, | ||
const cypher_astnode_t * | expression, | ||
bool | unique, | ||
cypher_astnode_t ** | children, | ||
unsigned int | nchildren, | ||
struct cypher_input_range | range | ||
) |
Construct a CYPHER_AST_DROP_NODE_PROP_CONSTRAINT
node.
The node will also be an instance of CYPHER_AST_SCHEMA_COMMAND
.
[identifier] | A CYPHER_AST_IDENTIFIER node. |
[label] | A CYPHER_AST_LABEL node. |
[expression] | A CYPHER_AST_EXPRESSION node. |
[unique] | true if the constraint is unique, and false otherwise. |
[children] | The children of the node. |
[nchildren] | The number of children. |
[range] | The input range. |
const cypher_astnode_t* cypher_ast_drop_node_prop_constraint_get_expression | ( | const cypher_astnode_t * | node | ) |
Get the expression of a CYPHER_AST_DROP_NODE_PROP_CONSTRAINT
node.
If the node is not an instance of CYPHER_AST_DROP_NODE_PROP_CONSTRAINT
then the result will be undefined.
[node] | The AST node. |
CYPHER_AST_EXPRESSION
node. const cypher_astnode_t* cypher_ast_drop_node_prop_constraint_get_identifier | ( | const cypher_astnode_t * | node | ) |
Get the identifier of a CYPHER_AST_DROP_NODE_PROP_CONSTRAINT
node.
If the node is not an instance of CYPHER_AST_DROP_NODE_PROP_CONSTRAINT
then the result will be undefined.
[node] | The AST node. |
CYPHER_AST_IDENTIFIER
node. const cypher_astnode_t* cypher_ast_drop_node_prop_constraint_get_label | ( | const cypher_astnode_t * | node | ) |
Get the label of a CYPHER_AST_DROP_NODE_PROP_CONSTRAINT
node.
If the node is not an instance of CYPHER_AST_DROP_NODE_PROP_CONSTRAINT
then the result will be undefined.
[node] | The AST node. |
CYPHER_AST_LABEL
node. bool cypher_ast_drop_node_prop_constraint_is_unique | ( | const cypher_astnode_t * | node | ) |
Check if the constraint of a CYPHER_AST_DROP_NODE_PROP_CONSTRAINT
node is unique.
If the node is not an instance of CYPHER_AST_DROP_NODE_PROP_CONSTRAINT
then the result will be undefined.
[node] | The AST node. |
true
if the constraint is unique, and false
otherwise. cypher_astnode_t* cypher_ast_drop_node_prop_index | ( | const cypher_astnode_t * | label, |
const cypher_astnode_t * | prop_name, | ||
cypher_astnode_t ** | children, | ||
unsigned int | nchildren, | ||
struct cypher_input_range | range | ||
) |
Construct a CYPHER_AST_DROP_NODE_PROP_INDEX
node.
The node will also be an instance of CYPHER_AST_SCHEMA_COMMAND
.
[label] | A label node, of type CYPHER_AST_LABEL . |
[prop_name] | A property name node, of type CYPHER_AST_PROP_NAME . |
[children] | The children of the node. |
[nchildren] | The number of children. |
[range] | The input range. |
const cypher_astnode_t* cypher_ast_drop_node_prop_index_get_label | ( | const cypher_astnode_t * | node | ) |
Get the label of a CYPHER_AST_DROP_NODE_PROP_INDEX
node.
If the node is not an instance of CYPHER_AST_DROP_NODE_PROP_INDEX
then the result will be undefined.
[node] | The AST node. |
CYPHER_AST_LABEL
node. const cypher_astnode_t* cypher_ast_drop_node_prop_index_get_prop_name | ( | const cypher_astnode_t * | node | ) |
Get the property name of a CYPHER_AST_DROP_NODE_PROP_INDEX
node.
If the node is not an instance of CYPHER_AST_DROP_NODE_PROP_INDEX
then the result will be undefined.
[node] | The AST node. |
CYPHER_AST_PROP_NAME
node. cypher_astnode_t* cypher_ast_drop_rel_prop_constraint | ( | const cypher_astnode_t * | identifier, |
const cypher_astnode_t * | label, | ||
const cypher_astnode_t * | expression, | ||
bool | unique, | ||
cypher_astnode_t ** | children, | ||
unsigned int | nchildren, | ||
struct cypher_input_range | range | ||
) |
Construct a CYPHER_AST_DROP_REL_PROP_CONSTRAINT
node.
The node will also be an instance of CYPHER_AST_SCHEMA_COMMAND
.
[identifier] | A CYPHER_AST_IDENTIFIER node. |
[label] | A CYPHER_AST_LABEL node. |
[expression] | A CYPHER_AST_EXPRESSION node. |
[unique] | true if the constraint is unique, and false otherwise. |
[children] | The children of the node. |
[nchildren] | The number of children. |
[range] | The input range. |
const cypher_astnode_t* cypher_ast_drop_rel_prop_constraint_get_expression | ( | const cypher_astnode_t * | node | ) |
Get the expression of a CYPHER_AST_DROP_REL_PROP_CONSTRAINT
node.
If the node is not an instance of CYPHER_AST_DROP_REL_PROP_CONSTRAINT
then the result will be undefined.
[node] | The AST node. |
CYPHER_AST_EXPRESSION
node. const cypher_astnode_t* cypher_ast_drop_rel_prop_constraint_get_identifier | ( | const cypher_astnode_t * | node | ) |
Get the identifier of a CYPHER_AST_DROP_REL_PROP_CONSTRAINT
node.
If the node is not an instance of CYPHER_AST_DROP_REL_PROP_CONSTRAINT
then the result will be undefined.
[node] | The AST node. |
CYPHER_AST_IDENTIFIER
node. const cypher_astnode_t* cypher_ast_drop_rel_prop_constraint_get_reltype | ( | const cypher_astnode_t * | node | ) |
Get the relationship type of a CYPHER_AST_DROP_REL_PROP_CONSTRAINT
node.
If the node is not an instance of CYPHER_AST_DROP_REL_PROP_CONSTRAINT
then the result will be undefined.
[node] | The AST node. |
CYPHER_AST_RELTYPE
node. bool cypher_ast_drop_rel_prop_constraint_is_unique | ( | const cypher_astnode_t * | node | ) |
Check if the constraint of a CYPHER_AST_DROP_REL_PROP_CONSTRAINT
node is unique.
If the node is not an instance of CYPHER_AST_DROP_REL_PROP_CONSTRAINT
then the result will be undefined.
[node] | The AST node. |
true
if the constraint is unique, and false
otherwise. cypher_astnode_t* cypher_ast_error | ( | const char * | s, |
size_t | n, | ||
struct cypher_input_range | range | ||
) |
Construct a CYPHER_AST_ERROR
node.
[s] | A pointer to a character string containing the erroneous input. |
[n] | The length of the character string. |
[range] | The input range. |
const char* cypher_ast_error_get_value | ( | const cypher_astnode_t * | node | ) |
Get a null terminated string for a CYPHER_AST_ERROR
node.
If the node is not an instance of CYPHER_AST_BLOCK_COMMENT
then the result will be undefined.
[node] | The AST node. |
cypher_astnode_t* cypher_ast_explain_option | ( | cypher_astnode_t ** | children, |
unsigned int | nchildren, | ||
struct cypher_input_range | range | ||
) |
Construct a CYPHER_AST_EXPLAIN_OPTION
node.
The node will also be an instance of CYPHER_AST_STATEMENT_OPTION
.
[children] | The children of the node. |
[nchildren] | The number of children. |
[range] | The input range. |
cypher_astnode_t* cypher_ast_extract | ( | const cypher_astnode_t * | identifier, |
const cypher_astnode_t * | expression, | ||
const cypher_astnode_t * | eval, | ||
cypher_astnode_t ** | children, | ||
unsigned int | nchildren, | ||
struct cypher_input_range | range | ||
) |
Construct a CYPHER_AST_EXTRACT
node.
The node will also be an instance of CYPHER_AST_LIST_COMPREHENSION
.
[identifier] | A CYPHER_AST_IDENTIFIER node. |
[expression] | A CYPHER_AST_EXPRESSION node. |
[eval] | A CYPHER_AST_EXPRESSION node, or null. |
[children] | The children of the node. |
[nchildren] | The number of children. |
[range] | The input range. |
cypher_astnode_t* cypher_ast_false | ( | struct cypher_input_range | range | ) |
Construct a CYPHER_AST_FALSE
node.
The node will also be an instance of CYPHER_AST_EXPRESSION
.
[range] | The input range. |
cypher_astnode_t* cypher_ast_filter | ( | const cypher_astnode_t * | identifier, |
const cypher_astnode_t * | expression, | ||
const cypher_astnode_t * | predicate, | ||
cypher_astnode_t ** | children, | ||
unsigned int | nchildren, | ||
struct cypher_input_range | range | ||
) |
Construct a CYPHER_AST_FILTER
node.
The node will also be an instance of CYPHER_AST_LIST_COMPREHENSION
.
[identifier] | A CYPHER_AST_IDENTIFIER node. |
[expression] | A CYPHER_AST_EXPRESSION node. |
[predicate] | A CYPHER_AST_EXPRESSION node, or null. |
[children] | The children of the node. |
[nchildren] | The number of children. |
[range] | The input range. |
cypher_astnode_t* cypher_ast_float | ( | const char * | s, |
size_t | n, | ||
struct cypher_input_range | range | ||
) |
Construct a CYPHER_AST_FLOAT
node.
The node will also be an instance of CYPHER_AST_EXPRESSION
.
[s] | A pointer to a character string. |
[n] | The length of the character string. |
[range] | The input range. |
const char* cypher_ast_float_get_valuestr | ( | const cypher_astnode_t * | node | ) |
Get the null terminated string value from a CYPHER_AST_FLOAT
node.
If the node is not an instance of CYPHER_AST_FLOAT
then the result will be undefined.
[node] | The AST node. |
cypher_astnode_t* cypher_ast_foreach | ( | const cypher_astnode_t * | identifier, |
const cypher_astnode_t * | expression, | ||
cypher_astnode_t *const * | clauses, | ||
unsigned int | nclauses, | ||
cypher_astnode_t ** | children, | ||
unsigned int | nchildren, | ||
struct cypher_input_range | range | ||
) |
Construct a CYPHER_AST_FOREACH
node.
The node will also be an instance of CYPHER_AST_CLAUSE
.
[identifier] | A CYPHER_AST_IDENTIFIER node. |
[expression] | A CYPHER_AST_EXPRESSION node. |
[clauses] | Clauses for foreach, all of type CYPHER_AST_CLAUSE . |
[nclauses] | The number of clauses. |
[children] | The children of the node. |
[nchildren] | The number of children. |
[range] | The input range. |
const cypher_astnode_t* cypher_ast_foreach_get_clause | ( | const cypher_astnode_t * | node, |
unsigned int | index | ||
) |
Get a clause from a CYPHER_AST_FOREACH
node.
If the node is not an instance of CYPHER_AST_FOREACH
then the result will be undefined.
[node] | The AST node. |
[index] | The index of the alternative. |
CYPHER_AST_CLAUSE
node, or null. const cypher_astnode_t* cypher_ast_foreach_get_expression | ( | const cypher_astnode_t * | node | ) |
Get the expression of a CYPHER_AST_FOREACH
node.
If the node is not an instance of CYPHER_AST_FOREACH
then the result will be undefined.
[node] | The AST node. |
CYPHER_AST_EXPRESSION
node. const cypher_astnode_t* cypher_ast_foreach_get_identifier | ( | const cypher_astnode_t * | node | ) |
Get the identifier of a CYPHER_AST_FOREACH
node.
If the node is not an instance of CYPHER_AST_FOREACH
then the result will be undefined.
[node] | The AST node. |
CYPHER_AST_IDENTIFIER
node. unsigned int cypher_ast_foreach_nclauses | ( | const cypher_astnode_t * | node | ) |
Get the number of clauses from a CYPHER_AST_FOREACH
node.
If the node is not an instance of CYPHER_AST_FOREACH
then the result will be undefined.
[node] | The AST node. |
int cypher_ast_fprint | ( | const cypher_astnode_t * | ast, |
FILE * | stream, | ||
unsigned int | width, | ||
const struct cypher_parser_colorization * | colorization, | ||
uint_fast32_t | flags | ||
) |
Print a represetation of an AST to a stream.
Useful for debugging purposes.
[ast] | The AST node. |
[stream] | The stream to print to. |
[width] | The width to render, which is advisory and may be exceeded. A value of 0 implies no restriction on width. |
[colorization] | A colorization scheme to apply, or null. |
[flags] | A bitmask of flags to control rendering. |
void cypher_ast_free | ( | cypher_astnode_t * | ast | ) |
Release an entire AST tree.
[ast] | The root of the AST tree. |
cypher_astnode_t* cypher_ast_function_name | ( | const char * | s, |
size_t | n, | ||
struct cypher_input_range | range | ||
) |
Construct a CYPHER_AST_FUNCTION_NAME
node.
[s] | A pointer to a character string containing the function name. |
[n] | The length of the character string. |
[range] | The input range. |
const char* cypher_ast_function_name_get_value | ( | const cypher_astnode_t * | node | ) |
Get a null terminated name string for a CYPHER_AST_FUNCTION_NAME
node.
If the node is not an instance of CYPHER_AST_FUNCTION_NAME
then the result will be undefined.
[node] | The AST node. |
cypher_astnode_t* cypher_ast_identifier | ( | const char * | s, |
size_t | n, | ||
struct cypher_input_range | range | ||
) |
Construct a CYPHER_AST_IDENTIFIER
node.
The node will also be an instance of CYPHER_AST_EXPRESSION
.
[s] | A pointer to a character string containing the identifier name. |
[n] | The length of the character string. |
[range] | The input range. |
const char* cypher_ast_identifier_get_name | ( | const cypher_astnode_t * | node | ) |
Get a null terminated name string for a CYPHER_AST_IDENTIFIER
node.
If the node is not an instance of CYPHER_AST_IDENTIFIER
then the result will be undefined.
[node] | The AST node. |
cypher_astnode_t* cypher_ast_index_name | ( | const char * | s, |
size_t | n, | ||
struct cypher_input_range | range | ||
) |
Construct a CYPHER_AST_INDEX_NAME
node.
[s] | A pointer to a character string containing the index name. |
[n] | The length of the character string. |
[range] | The input range. |
const char* cypher_ast_index_name_get_value | ( | const cypher_astnode_t * | node | ) |
Get a null terminated name string for a CYPHER_AST_INDEX_NAME
node.
If the node is not an instance of CYPHER_AST_INDEX_NAME
then the result will be undefined.
[node] | The AST node. |
cypher_astnode_t* cypher_ast_integer | ( | const char * | s, |
size_t | n, | ||
struct cypher_input_range | range | ||
) |
Construct a CYPHER_AST_INTEGER
node.
The node will also be an instance of CYPHER_AST_EXPRESSION
.
[s] | A pointer to a character string. |
[n] | The length of the character string. |
[range] | The input range. |
const char* cypher_ast_integer_get_valuestr | ( | const cypher_astnode_t * | node | ) |
Get the null terminated string value from a CYPHER_AST_INTEGER
node.
If the node is not an instance of CYPHER_AST_INTEGER
then the result will be undefined.
[node] | The AST node. |
cypher_astnode_t* cypher_ast_label | ( | const char * | s, |
size_t | n, | ||
struct cypher_input_range | range | ||
) |
Construct a CYPHER_AST_LABEL
node.
[s] | A pointer to a character string containing the label name. |
[n] | The length of the character string. |
[range] | The input range. |
const char* cypher_ast_label_get_name | ( | const cypher_astnode_t * | node | ) |
Get a null terminated name string for a CYPHER_AST_LABEL
node.
If the node is not an instance of CYPHER_AST_LABEL
then the result will be undefined.
[node] | The AST node. |
cypher_astnode_t* cypher_ast_labels_operator | ( | const cypher_astnode_t * | expression, |
cypher_astnode_t *const * | labels, | ||
unsigned int | nlabels, | ||
cypher_astnode_t ** | children, | ||
unsigned int | nchildren, | ||
struct cypher_input_range | range | ||
) |
Construct a CYPHER_AST_LABELS_OPERATOR
node.
The node will also be an instance of CYPHER_AST_EXPRESSION
.
[expression] | A CYPHER_AST_EXPRESSION node. |
[labels] | Labels for the operator, all of type CYPHER_AST_LABEL . |
[nlabels] | The number of labels. |
[children] | The children of the node. |
[nchildren] | The number of children. |
[range] | The input range. |
const cypher_astnode_t* cypher_ast_labels_operator_get_expression | ( | const cypher_astnode_t * | node | ) |
Get the expression of a CYPHER_AST_PROPERTY_OPERATOR
node.
If the node is not an instance of CYPHER_AST_PROPERTY_OPERATOR
then the result will be undefined.
[node] | The AST node. |
CYPHER_AST_EXPRESSION
node. const cypher_astnode_t* cypher_ast_labels_operator_get_label | ( | const cypher_astnode_t * | node, |
unsigned int | index | ||
) |
Get a label from a CYPHER_AST_LABELS_OPERATOR
node.
If the node is not an instance of CYPHER_AST_LABELS_OPERATOR
then the result will be undefined.
[node] | The AST node. |
[index] | The index of the label. |
CYPHER_AST_LABEL
node, or null. unsigned int cypher_ast_labels_operator_nlabels | ( | const cypher_astnode_t * | node | ) |
Get the number of labels from a CYPHER_AST_LABELS_OPERATOR
node.
If the node is not an instance of CYPHER_AST_LABELS_OPERATOR
then the result will be undefined.
[node] | The AST node. |
cypher_astnode_t* cypher_ast_line_comment | ( | const char * | s, |
size_t | n, | ||
struct cypher_input_range | range | ||
) |
Construct a CYPHER_AST_LINE_COMMENT
node.
The node will also be an instance of CYPHER_AST_COMMENT
.
[s] | A pointer to a character string containing the comment. |
[n] | The length of the character string. |
[range] | The input range. |
const char* cypher_ast_line_comment_get_value | ( | const cypher_astnode_t * | node | ) |
Get a null terminated string for a CYPHER_AST_LINE_COMMENT
node.
If the node is not an instance of CYPHER_AST_LINE_COMMENT
then the result will be undefined.
[node] | The AST node. |
cypher_astnode_t* cypher_ast_list_comprehension | ( | const cypher_astnode_t * | identifier, |
const cypher_astnode_t * | expression, | ||
const cypher_astnode_t * | predicate, | ||
const cypher_astnode_t * | eval, | ||
cypher_astnode_t ** | children, | ||
unsigned int | nchildren, | ||
struct cypher_input_range | range | ||
) |
Construct a CYPHER_AST_LIST_COMPREHENSION
node.
The node will also be an instance of CYPHER_AST_EXPRESSION
.
[identifier] | A CYPHER_AST_IDENTIFIER node. |
[expression] | A CYPHER_AST_EXPRESSION node. |
[predicate] | A CYPHER_AST_EXPRESSION node, or null. |
[eval] | A CYPHER_AST_EXPRESSION node, or null. |
[children] | The children of the node. |
[nchildren] | The number of children. |
[range] | The input range. |
const cypher_astnode_t* cypher_ast_list_comprehension_get_eval | ( | const cypher_astnode_t * | node | ) |
Get the evaluation from a CYPHER_AST_LIST_COMPREHENSION
node.
If the node is not an instance of CYPHER_AST_LIST_COMPREHENSION
then the result will be undefined.
[node] | The AST node. |
CYPHER_AST_EXPRESSION
node, or null. const cypher_astnode_t* cypher_ast_list_comprehension_get_expression | ( | const cypher_astnode_t * | node | ) |
Get the expression from a CYPHER_AST_LIST_COMPREHENSION
node.
If the node is not an instance of CYPHER_AST_LIST_COMPREHENSION
then the result will be undefined.
[node] | The AST node. |
CYPHER_AST_EXPRESSION
node. const cypher_astnode_t* cypher_ast_list_comprehension_get_identifier | ( | const cypher_astnode_t * | node | ) |
Get the identifier from a CYPHER_AST_LIST_COMPREHENSION
node.
If the node is not an instance of CYPHER_AST_LIST_COMPREHENSION
then the result will be undefined.
[node] | The AST node. |
CYPHER_AST_IDENTIFIER
node. const cypher_astnode_t* cypher_ast_list_comprehension_get_predicate | ( | const cypher_astnode_t * | node | ) |
Get the predicate from a CYPHER_AST_LIST_COMPREHENSION
node.
If the node is not an instance of CYPHER_AST_LIST_COMPREHENSION
then the result will be undefined.
[node] | The AST node. |
CYPHER_AST_EXPRESSION
node, or null. cypher_astnode_t* cypher_ast_load_csv | ( | bool | with_headers, |
const cypher_astnode_t * | url, | ||
const cypher_astnode_t * | identifier, | ||
const cypher_astnode_t * | field_terminator, | ||
cypher_astnode_t ** | children, | ||
unsigned int | nchildren, | ||
struct cypher_input_range | range | ||
) |
Construct a CYPHER_AST_LOAD_CSV
node.
The node will also be an instance of CYPHER_AST_QUERY_CLAUSE
.
[with_headers] | true if the WITH HEADERS option is enabled, and false otherwise. |
[url] | A CYPHER_AST_EXPRESSION node. |
[identifier] | A CYPHER_AST_IDENTIFIER node. |
[field_terminator] | A CYPHER_AST_STRING node, or null. |
[children] | The children of the node. |
[nchildren] | The number of children. |
[range] | The input range. |
const cypher_astnode_t* cypher_ast_load_csv_get_field_terminator | ( | const cypher_astnode_t * | node | ) |
Get the field terminator of a CYPHER_AST_LOAD_CSV
node.
If the node is not an instance of CYPHER_AST_LOAD_CSV
then the result will be undefined.
[node] | The AST node. |
CYPHER_AST_STRING
node, or null. const cypher_astnode_t* cypher_ast_load_csv_get_identifier | ( | const cypher_astnode_t * | node | ) |
Get the identifier of a CYPHER_AST_LOAD_CSV
node.
If the node is not an instance of CYPHER_AST_LOAD_CSV
then the result will be undefined.
[node] | The AST node. |
CYPHER_AST_IDENTIFIER
node. const cypher_astnode_t* cypher_ast_load_csv_get_url | ( | const cypher_astnode_t * | node | ) |
Get the url of a CYPHER_AST_LOAD_CSV
node.
If the node is not an instance of CYPHER_AST_LOAD_CSV
then the result will be undefined.
[node] | The AST node. |
CYPHER_AST_EXPRESSION
node. bool cypher_ast_load_csv_has_with_headers | ( | const cypher_astnode_t * | node | ) |
Check the with_headers value of a CYPHER_AST_LOAD_CSV
node.
If the node is not an instance of CYPHER_AST_LOAD_CSV
then the result will be undefined.
[node] | The AST node. |
true
if the WITH HEADERS
option is enabled, and false
otherwise. cypher_astnode_t* cypher_ast_map | ( | cypher_astnode_t *const * | keys, |
cypher_astnode_t *const * | values, | ||
unsigned int | nentries, | ||
cypher_astnode_t ** | children, | ||
unsigned int | nchildren, | ||
struct cypher_input_range | range | ||
) |
Construct a CYPHER_AST_MAP
node.
The node will also be an instance of CYPHER_AST_EXPRESSION
.
[keys] | The keys for the map, all of type CYPHER_AST_PROP_NAME . |
[values] | The values for the map, all of type CYPEHR_AST_EXPRESSION . |
[nentries] | The number of keys and values. |
[children] | The children of the node. |
[nchildren] | The number of children. |
[range] | The input range. |
const cypher_astnode_t* cypher_ast_map_get_key | ( | const cypher_astnode_t * | node, |
unsigned int | index | ||
) |
Get a key from a CYPHER_AST_MAP
node.
If the node is not an instance of CYPHER_AST_MAP
then the result will be undefined.
[node] | The AST node. |
[index] | The index of the entry. |
CYPHER_AST_PROP_NAME
node. const cypher_astnode_t* cypher_ast_map_get_value | ( | const cypher_astnode_t * | node, |
unsigned int | index | ||
) |
Get a value from a CYPHER_AST_MAP
node.
If the node is not an instance of CYPHER_AST_MAP
then the result will be undefined.
[node] | The AST node. |
[index] | The index of the entry. |
CYPHER_AST_EXPRESSION
node. unsigned int cypher_ast_map_nentries | ( | const cypher_astnode_t * | node | ) |
Get the number of entries in a CYPHER_AST_MAP
node.
If the node is not an instance of CYPHER_AST_MAP
then the result will be undefined.
[node] | The AST node. |
cypher_astnode_t* cypher_ast_map_projection | ( | const cypher_astnode_t * | expression, |
cypher_astnode_t *const * | selectors, | ||
unsigned int | nselectors, | ||
cypher_astnode_t ** | children, | ||
unsigned int | nchildren, | ||
struct cypher_input_range | range | ||
) |
Construct a CYPHER_AST_MAP_PROJECTION
node.
The node will also be an instance of CYPHER_AST_EXPRESSION
.
[expression] | A CYPHER_AST_EXPRESSION node. |
[selectors] | Selectors for the projection, all of type CYPHER_AST_MAP_PROJECTION_SELECTOR . |
[nselectors] | The number of selectors (may be zero). |
[children] | The children of the node. |
[nchildren] | The number of children. |
[range] | The input range. |
cypher_astnode_t* cypher_ast_map_projection_all_properties | ( | cypher_astnode_t ** | children, |
unsigned int | nchildren, | ||
struct cypher_input_range | range | ||
) |
Construct a CYPHER_AST_MAP_PROJECTION_ALL_PROPERTIES
node.
The node will also be an instance of CYPHER_AST_MAP_PROJECTION_SELECTOR
.
[children] | The children of the node. |
[nchildren] | The number of children. |
[range] | The input range. |
const cypher_astnode_t* cypher_ast_map_projection_get_expression | ( | const cypher_astnode_t * | node | ) |
Get the expression of a CYPHER_AST_MAP_PROJECTION
node.
If the node is not an instance of CYPHER_AST_MAP_PROJECTION
then the result will be undefined.
[node] | The AST node. |
CYPHER_AST_EXPRESSION
node. const cypher_astnode_t* cypher_ast_map_projection_get_selector | ( | const cypher_astnode_t * | node, |
unsigned int | index | ||
) |
Get a selector from a CYPHER_AST_MAP_PROJECTION
node.
If the node is not an instance of CYPHER_AST_MAP_PROJECTION
then the result will be undefined.
[node] | The AST node. |
[index] | The index of the selector. |
CYPHER_AST_MAP_PROJECTION_SELECTOR
node, or null. cypher_astnode_t* cypher_ast_map_projection_identifier | ( | const cypher_astnode_t * | identifier, |
cypher_astnode_t ** | children, | ||
unsigned int | nchildren, | ||
struct cypher_input_range | range | ||
) |
Construct a CYPHER_AST_MAP_PROJECTION_IDENTIFIER
node.
The node will also be an instance of CYPHER_AST_MAP_PROJECTION_SELECTOR
.
[identifier] | A CYPHER_AST_IDENTIFIER node. |
[children] | The children of the node. |
[nchildren] | The number of children. |
[range] | The input range. |
const cypher_astnode_t* cypher_ast_map_projection_identifier_get_identifier | ( | const cypher_astnode_t * | node | ) |
Get the identifier of a CYPHER_AST_MAP_PROJECTION_IDENTIFIER
node.
If the node is not an instance of CYPHER_AST_MAP_PROJECTION_IDENTIFIER
then the result will be undefined.
[node] | The AST node. |
CYPHER_AST_IDENTIFIER
node. cypher_astnode_t* cypher_ast_map_projection_literal | ( | const cypher_astnode_t * | prop_name, |
const cypher_astnode_t * | expression, | ||
cypher_astnode_t ** | children, | ||
unsigned int | nchildren, | ||
struct cypher_input_range | range | ||
) |
Construct a CYPHER_AST_MAP_PROJECTION_LITERAL
node.
The node will also be an instance of CYPHER_AST_MAP_PROJECTION_SELECTOR
.
[prop_name] | A CYPHER_AST_PROP_NAME node. |
[expression] | A CYPHER_AST_EXPRESSION node. |
[children] | The children of the node. |
[nchildren] | The number of children. |
[range] | The input range. |
const cypher_astnode_t* cypher_ast_map_projection_literal_get_expression | ( | const cypher_astnode_t * | node | ) |
Get the expression of a CYPHER_AST_MAP_PROJECTION_LITERAL
node.
If the node is not an instance of CYPHER_AST_MAP_PROJECTION_LITERAL
then the result will be undefined.
[node] | The AST node. |
CYPHER_AST_EXPRESSION
node. const cypher_astnode_t* cypher_ast_map_projection_literal_get_prop_name | ( | const cypher_astnode_t * | node | ) |
Get the property name of a CYPHER_AST_MAP_PROJECTION_LITERAL
node.
If the node is not an instance of CYPHER_AST_MAP_PROJECTION_LITERAL
then the result will be undefined.
[node] | The AST node. |
CYPHER_AST_PROP_NAME
node. unsigned int cypher_ast_map_projection_nselectors | ( | const cypher_astnode_t * | node | ) |
Get the number of selectors in a CYPHER_AST_MAP_PROJECTION
node.
If the node is not an instance of CYPHER_AST_MAP_PROJECTION
then the result will be undefined.
[node] | The AST node. |
cypher_astnode_t* cypher_ast_map_projection_property | ( | const cypher_astnode_t * | prop_name, |
cypher_astnode_t ** | children, | ||
unsigned int | nchildren, | ||
struct cypher_input_range | range | ||
) |
Construct a CYPHER_AST_MAP_PROJECTION_PROPERTY
node.
The node will also be an instance of CYPHER_AST_MAP_PROJECTION_SELECTOR
.
[prop_name] | A CYPHER_AST_PROP_NAME node. |
[children] | The children of the node. |
[nchildren] | The number of children. |
[range] | The input range. |
const cypher_astnode_t* cypher_ast_map_projection_property_get_prop_name | ( | const cypher_astnode_t * | node | ) |
Get the property name of a CYPHER_AST_MAP_PROJECTION_PROPERTY
node.
If the node is not an instance of CYPHER_AST_MAP_PROJECTION_PROPERTY
then the result will be undefined.
[node] | The AST node. |
CYPHER_AST_PROP_NAME
node. cypher_astnode_t* cypher_ast_match | ( | bool | optional, |
const cypher_astnode_t * | pattern, | ||
cypher_astnode_t *const * | hints, | ||
unsigned int | nhints, | ||
const cypher_astnode_t * | predicate, | ||
cypher_astnode_t ** | children, | ||
unsigned int | nchildren, | ||
struct cypher_input_range | range | ||
) |
Construct a CYPHER_AST_MATCH
node.
The node will also be an instance of CYPHER_AST_CLAUSE
.
[optional] | true if the node represents an OPTIONAL MATCH , and false otherwise. |
[pattern] | A CYPHER_AST_PATTERN node. |
[hints] | Hints for lookup, all of type CYPHER_AST_MATCH_HINT . |
[nhints] | The number of match hints. |
[predicate] | A CYPHER_AST_EXPRESSION node, or null. |
[children] | The children of the node. |
[nchildren] | The number of children. |
[range] | The input range. |
const cypher_astnode_t* cypher_ast_match_get_hint | ( | const cypher_astnode_t * | node, |
unsigned int | index | ||
) |
Get a hint from a CYPHER_AST_MATCH
node.
If the node is not an instance of CYPHER_AST_MATCH
then the result will be undefined.
[node] | The AST node. |
[index] | The index of the hint. |
CYPHER_AST_MATCH_HINT
node, or null. const cypher_astnode_t* cypher_ast_match_get_pattern | ( | const cypher_astnode_t * | node | ) |
Get the pattern of a CYPHER_AST_MATCH
node.
If the node is not an instance of CYPHER_AST_MATCH
then the result will be undefined.
[node] | The AST node. |
CYPHER_AST_PATTERN
node. const cypher_astnode_t* cypher_ast_match_get_predicate | ( | const cypher_astnode_t * | node | ) |
Get the predicate of a CYPHER_AST_PREDICATE
node.
If the node is not an instance of CYPHER_AST_PREDICATE
then the result will be undefined.
[node] | The AST node. |
CYPHER_AST_PREDICATE
node, or null. bool cypher_ast_match_is_optional | ( | const cypher_astnode_t * | node | ) |
Check if the optional value of a CYPHER_AST_MATCH
node is set.
If the node is not an instance of CYPHER_AST_MATCH
then the result will be undefined.
[node] | The AST node. |
true
if the OPTIONAL MATCH
option is enabled, and false
otherwise. unsigned int cypher_ast_match_nhints | ( | const cypher_astnode_t * | node | ) |
Get the number of hints in a CYPHER_AST_MATCH
node.
If the node is not an instance of CYPHER_AST_MATCH
then the result will be undefined.
[node] | The AST node. |
cypher_astnode_t* cypher_ast_merge | ( | const cypher_astnode_t * | path, |
cypher_astnode_t *const * | actions, | ||
unsigned int | nactions, | ||
cypher_astnode_t ** | children, | ||
unsigned int | nchildren, | ||
struct cypher_input_range | range | ||
) |
Construct a CYPHER_AST_MERGE
node.
The node will also be an instance of CYPHER_AST_CLAUSE
.
[path] | A CYPHER_AST_PATTERN_PATH node. |
[actions] | Actions for merge, all of type CYPHER_AST_MERGE_ACTION . |
[nactions] | The number of match actions. |
[children] | The children of the node. |
[nchildren] | The number of children. |
[range] | The input range. |
const cypher_astnode_t* cypher_ast_merge_get_action | ( | const cypher_astnode_t * | node, |
unsigned int | index | ||
) |
Get an action from a CYPHER_AST_MERGE
node.
If the node is not an instance of CYPHER_AST_MERGE
then the result will be undefined.
[node] | The AST node. |
[index] | The index of the action. |
CYPHER_AST_MERGE_HINT
node, or null. const cypher_astnode_t* cypher_ast_merge_get_pattern_path | ( | const cypher_astnode_t * | node | ) |
Get the pattern path of a CYPHER_AST_MERGE
node.
If the node is not an instance of CYPHER_AST_MERGE
then the result will be undefined.
[node] | The AST node. |
CYPHER_AST_PATTERN_PATH
node. unsigned int cypher_ast_merge_nactions | ( | const cypher_astnode_t * | node | ) |
Get the number of actions in a CYPHER_AST_MERGE
node.
If the node is not an instance of CYPHER_AST_MERGE
then the result will be undefined.
[node] | The AST node. |
cypher_astnode_t* cypher_ast_merge_properties | ( | const cypher_astnode_t * | identifier, |
const cypher_astnode_t * | expression, | ||
cypher_astnode_t ** | children, | ||
unsigned int | nchildren, | ||
struct cypher_input_range | range | ||
) |
Construct a CYPHER_AST_MERGE_PROPERTIES
node.
The node will also be an instance of CYPHER_AST_SET_ITEM
.
[identifier] | A CYPHER_AST_IDENTIFIER node. |
[expression] | A CYPHER_AST_EXPRESSION node. |
[children] | The children of the node. |
[nchildren] | The number of children. |
[range] | The input range. |
const cypher_astnode_t* cypher_ast_merge_properties_get_expression | ( | const cypher_astnode_t * | node | ) |
Get the expression of a CYPHER_AST_MERGE_PROPERTIES
node.
If the node is not an instance of CYPHER_AST_MERGE_PROPERTIES
then the result will be undefined.
[node] | The AST node. |
CYPHER_AST_EXPRESSION
node. const cypher_astnode_t* cypher_ast_merge_properties_get_identifier | ( | const cypher_astnode_t * | node | ) |
Get the identifier of a CYPHER_AST_MERGE_PROPERTIES
node.
If the node is not an instance of CYPHER_AST_MERGE_PROPERTIES
then the result will be undefined.
[node] | The AST node. |
CYPHER_AST_IDENTIFIER
node. cypher_astnode_t* cypher_ast_named_path | ( | const cypher_astnode_t * | identifier, |
const cypher_astnode_t * | path, | ||
cypher_astnode_t ** | children, | ||
unsigned int | nchildren, | ||
struct cypher_input_range | range | ||
) |
Construct a CYPHER_AST_NAMED_PATH
node.
The node will also be an instance of CYPHER_AST_PATTERN_PATH
.
[identifier] | A CYPHER_AST_IDENTIFIER node. |
[path] | A CYPHER_AST_PATTERN_PATH node. |
[children] | The children of the node. |
[nchildren] | The number of children. |
[range] | The input range. |
const cypher_astnode_t* cypher_ast_named_path_get_identifier | ( | const cypher_astnode_t * | node | ) |
Get the identifier from a CYPHER_AST_NAMED_PATH
node.
If the node is not an instance of CYPHER_AST_NAMED_PATH
then the result will be undefined.
[node] | The AST node. |
CYPHER_AST_IDENTIFIER
node. const cypher_astnode_t* cypher_ast_named_path_get_path | ( | const cypher_astnode_t * | node | ) |
Get the unnamed pattern path from a CYPHER_AST_NAMED_PATH
node.
If the node is not an instance of CYPHER_AST_NAMED_PATH
then the result will be undefined.
[node] | The AST node. |
CYPHER_AST_PATTERN_PATH
node. cypher_astnode_t* cypher_ast_node_id_lookup | ( | const cypher_astnode_t * | identifier, |
cypher_astnode_t *const * | ids, | ||
unsigned int | nids, | ||
cypher_astnode_t ** | children, | ||
unsigned int | nchildren, | ||
struct cypher_input_range | range | ||
) |
Construct a CYPHER_AST_NODE_ID_LOOKUP
node.
The node will also be an instance of CYPHER_AST_START_POINT
.
[identifier] | A CYPHER_AST_IDENTIFIER node. |
[ids] | Node IDs for lookup, all of type CYPHER_AST_INTEGER . |
[nids] | The number of node IDs. |
[children] | The children of the node. |
[nchildren] | The number of children. |
[range] | The input range. |
const cypher_astnode_t* cypher_ast_node_id_lookup_get_id | ( | const cypher_astnode_t * | node, |
unsigned int | index | ||
) |
Get an id of a CYPHER_AST_NODE_ID_LOOKUP
node.
If the node is not an instance of CYPHER_AST_NODE_ID_LOOKUP
then the result will be undefined.
[node] | The AST node. |
[index] | The index of the id. |
CYPHER_AST_INTEGER
node, or null. const cypher_astnode_t* cypher_ast_node_id_lookup_get_identifier | ( | const cypher_astnode_t * | node | ) |
Get the identifier of a CYPHER_AST_NODE_ID_LOOKUP
node.
If the node is not an instance of CYPHER_AST_NODE_ID_LOOKUP
then the result will be undefined.
[node] | The AST node. |
CYPHER_AST_IDENTIFIER
node. unsigned int cypher_ast_node_id_lookup_nids | ( | const cypher_astnode_t * | node | ) |
Get the number of ids in a CYPHER_AST_NODE_ID_LOOKUP
node.
If the node is not an instance of CYPHER_AST_NODE_ID_LOOKUP
then the result will be undefined.
[node] | The AST node. |
cypher_astnode_t* cypher_ast_node_index_lookup | ( | const cypher_astnode_t * | identifier, |
const cypher_astnode_t * | index_name, | ||
const cypher_astnode_t * | prop_name, | ||
const cypher_astnode_t * | lookup, | ||
cypher_astnode_t ** | children, | ||
unsigned int | nchildren, | ||
struct cypher_input_range | range | ||
) |
Construct a CYPHER_AST_NODE_INDEX_LOOKUP
node.
The node will also be an instance of CYPHER_AST_START_POINT
.
[identifier] | A CYPHER_AST_IDENTIFIER node. |
[index_name] | A CYPHER_AST_INDEX_NAME node. |
[prop_name] | A CYPHER_AST_PROP_NAME node. |
[lookup] | A CYPHER_AST_STRING or CYPHER_AST_PARAMETER node. |
[children] | The children of the node. |
[nchildren] | The number of children. |
[range] | The input range. |
const cypher_astnode_t* cypher_ast_node_index_lookup_get_identifier | ( | const cypher_astnode_t * | node | ) |
Get the identifier of a CYPHER_AST_NODE_INDEX_LOOKUP
node.
If the node is not an instance of CYPHER_AST_NODE_INDEX_LOOKUP
then the result will be undefined.
[node] | The AST node. |
CYPHER_AST_IDENTIFIER
node. const cypher_astnode_t* cypher_ast_node_index_lookup_get_index_name | ( | const cypher_astnode_t * | node | ) |
Get the index name of a CYPHER_AST_NODE_INDEX_LOOKUP
node.
If the node is not an instance of CYPHER_AST_NODE_INDEX_LOOKUP
then the result will be undefined.
[node] | The AST node. |
CYPHER_AST_INDEX_NAME
node. const cypher_astnode_t* cypher_ast_node_index_lookup_get_lookup | ( | const cypher_astnode_t * | node | ) |
Get the lookup of a CYPHER_AST_NODE_INDEX_LOOKUP
node.
If the node is not an instance of CYPHER_AST_NODE_INDEX_LOOKUP
then the result will be undefined.
[node] | The AST node. |
CYPHER_AST_STRING
or CYPHER_AST_PARAMETER
node. const cypher_astnode_t* cypher_ast_node_index_lookup_get_prop_name | ( | const cypher_astnode_t * | node | ) |
Get the prop name of a CYPHER_AST_NODE_INDEX_LOOKUP
node.
If the node is not an instance of CYPHER_AST_NODE_INDEX_LOOKUP
then the result will be undefined.
[node] | The AST node. |
CYPHER_AST_PROP_NAME
node. cypher_astnode_t* cypher_ast_node_index_query | ( | const cypher_astnode_t * | identifier, |
const cypher_astnode_t * | index_name, | ||
const cypher_astnode_t * | query, | ||
cypher_astnode_t ** | children, | ||
unsigned int | nchildren, | ||
struct cypher_input_range | range | ||
) |
Construct a CYPHER_AST_NODE_INDEX_QUERY
node.
The node will also be an instance of CYPHER_AST_START_POINT
.
[identifier] | A CYPHER_AST_IDENTIFIER node. |
[index_name] | A CYPHER_AST_INDEX_NAME node. |
[query] | A CYPHER_AST_STRING or CYPHER_AST_PARAMETER node. |
[children] | The children of the node. |
[nchildren] | The number of children. |
[range] | The input range. |
const cypher_astnode_t* cypher_ast_node_index_query_get_identifier | ( | const cypher_astnode_t * | node | ) |
Get the identifier of a CYPHER_AST_NODE_INDEX_QUERY
node.
If the node is not an instance of CYPHER_AST_NODE_INDEX_QUERY
then the result will be undefined.
[node] | The AST node. |
CYPHER_AST_IDENTIFIER
node. const cypher_astnode_t* cypher_ast_node_index_query_get_index_name | ( | const cypher_astnode_t * | node | ) |
Get the index name of a CYPHER_AST_NODE_INDEX_QUERY
node.
If the node is not an instance of CYPHER_AST_NODE_INDEX_QUERY
then the result will be undefined.
[node] | The AST node. |
CYPHER_AST_INDEX_NAME
node. const cypher_astnode_t* cypher_ast_node_index_query_get_query | ( | const cypher_astnode_t * | node | ) |
Get the query of a CYPHER_AST_NODE_INDEX_QUERY
node.
If the node is not an instance of CYPHER_AST_NODE_INDEX_QUERY
then the result will be undefined.
[node] | The AST node. |
CYPHER_AST_STRING
or CYPHER_AST_PARAMETER
node. cypher_astnode_t* cypher_ast_node_pattern | ( | const cypher_astnode_t * | identifier, |
cypher_astnode_t *const * | labels, | ||
unsigned int | nlabels, | ||
const cypher_astnode_t * | properties, | ||
cypher_astnode_t ** | children, | ||
unsigned int | nchildren, | ||
struct cypher_input_range | range | ||
) |
Construct a CYPHER_AST_NODE_PATTERN
node.
[identifier] | A CYPHER_AST_IDENTIFIER node, or null. |
[labels] | The labels in the pattern, which must all be of type CYPHER_AST_LABEL . |
[nlabels] | The number of labels in the pattern. |
[properties] | A CYPHER_AST_MAP node, a CYPHER_AST_PARAMETER node, or null. |
[children] | The children of the node. |
[nchildren] | The number of children. |
[range] | The input range. |
const cypher_astnode_t* cypher_ast_node_pattern_get_identifier | ( | const cypher_astnode_t * | node | ) |
Get the identifier of a CYPHER_AST_NODE_PATTERN
node.
If the node is not an instance of CYPHER_AST_NODE_PATTERN
then the result will be undefined.
[node] | The AST node. |
CYPHER_AST_IDENTIFIER
node, or null. const cypher_astnode_t* cypher_ast_node_pattern_get_label | ( | const cypher_astnode_t * | node, |
unsigned int | index | ||
) |
Get a label from a CYPHER_AST_NODE_PATTERN
node.
If the node is not an instance of CYPHER_AST_NODE_PATTERN
then the result will be undefined.
[node] | The AST node. |
[index] | The index of the label. |
CYPHER_AST_LABEL
node, or null. const cypher_astnode_t* cypher_ast_node_pattern_get_properties | ( | const cypher_astnode_t * | node | ) |
Get the properties of a CYPHER_AST_NODE_PATTERN
node.
If the node is not an instance of CYPHER_AST_NODE_PATTERN
then the result will be undefined.
[node] | The AST node. |
CYPHER_AST_MAP
node, a CYPHER_AST_PARAMETER
node, or null. unsigned int cypher_ast_node_pattern_nlabels | ( | const cypher_astnode_t * | node | ) |
Get the number of labels in a CYPHER_AST_NODE_PATTERN
node.
If the node is not an instance of CYPHER_AST_NODE_PATTERN
then the result will be undefined.
[node] | The AST node. |
cypher_astnode_t* cypher_ast_none | ( | const cypher_astnode_t * | identifier, |
const cypher_astnode_t * | expression, | ||
const cypher_astnode_t * | predicate, | ||
cypher_astnode_t ** | children, | ||
unsigned int | nchildren, | ||
struct cypher_input_range | range | ||
) |
Construct a CYPHER_AST_NONE
node.
The node will also be an instance of CYPHER_AST_LIST_COMPREHENSION
.
[identifier] | A CYPHER_AST_IDENTIFIER node. |
[expression] | A CYPHER_AST_EXPRESSION node. |
[predicate] | A CYPHER_AST_EXPRESSION node, or null. |
[children] | The children of the node. |
[nchildren] | The number of children. |
[range] | The input range. |
cypher_astnode_t* cypher_ast_null | ( | struct cypher_input_range | range | ) |
Construct a CYPHER_AST_NULL
node.
The node will also be an instance of CYPHER_AST_EXPRESSION
.
[range] | The input range. |
cypher_astnode_t* cypher_ast_on_create | ( | cypher_astnode_t *const * | items, |
unsigned int | nitems, | ||
cypher_astnode_t ** | children, | ||
unsigned int | nchildren, | ||
struct cypher_input_range | range | ||
) |
Construct a CYPHER_AST_ON_CREATE
node.
The node will also be an instance of CYPHER_AST_MERGE_ACTION
.
[items] | Items for ON CREATE , all of type CYPHER_AST_SET_ITEM . |
[nitems] | The number of ON CREATE items. |
[children] | The children of the node. |
[nchildren] | The number of children. |
[range] | The input range. |
const cypher_astnode_t* cypher_ast_on_create_get_item | ( | const cypher_astnode_t * | node, |
unsigned int | index | ||
) |
Get an item from a CYPHER_AST_ON_CREATE
node.
If the node is not an instance of CYPHER_AST_ON_CREATE
then the result will be undefined.
[node] | The AST node. |
[index] | The index of the action. |
CYPHER_AST_SET_ITEM
node, or null. unsigned int cypher_ast_on_create_nitems | ( | const cypher_astnode_t * | node | ) |
Get the number of items in a CYPHER_AST_ON_CREATE
node.
If the node is not an instance of CYPHER_AST_ON_CREATE
then the result will be undefined.
[node] | The AST node. |
cypher_astnode_t* cypher_ast_on_match | ( | cypher_astnode_t *const * | items, |
unsigned int | nitems, | ||
cypher_astnode_t ** | children, | ||
unsigned int | nchildren, | ||
struct cypher_input_range | range | ||
) |
Construct a CYPHER_AST_ON_MATCH
node.
The node will also be an instance of CYPHER_AST_MERGE_ACTION
.
[items] | Items for ON MATCH , all of type CYPHER_AST_SET_ITEM . |
[nitems] | The number of ON MATCH items. |
[children] | The children of the node. |
[nchildren] | The number of children. |
[range] | The input range. |
const cypher_astnode_t* cypher_ast_on_match_get_item | ( | const cypher_astnode_t * | node, |
unsigned int | index | ||
) |
Get an item from a CYPHER_AST_ON_MATCH
node.
If the node is not an instance of CYPHER_AST_ON_MATCH
then the result will be undefined.
[node] | The AST node. |
[index] | The index of the action. |
CYPHER_AST_SET_ITEM
node, or null. unsigned int cypher_ast_on_match_nitems | ( | const cypher_astnode_t * | node | ) |
Get the number of items in a CYPHER_AST_ON_MATCH
node.
If the node is not an instance of CYPHER_AST_ON_MATCH
then the result will be undefined.
[node] | The AST node. |
cypher_astnode_t* cypher_ast_order_by | ( | cypher_astnode_t *const * | items, |
unsigned int | nitems, | ||
cypher_astnode_t ** | children, | ||
unsigned int | nchildren, | ||
struct cypher_input_range | range | ||
) |
Construct a CYPHER_AST_ORDER_BY
node.
[items] | Items for ORDER BY , all of type CYPHER_AST_SORT_ITEM . |
[nitems] | The number of items. |
[children] | The children of the node. |
[nchildren] | The number of children. |
[range] | The input range. |
const cypher_astnode_t* cypher_ast_order_by_get_item | ( | const cypher_astnode_t * | node, |
unsigned int | index | ||
) |
Get an item from a CYPHER_AST_ORDER_BY
node.
If the node is not an instance of CYPHER_AST_ORDER_BY
then the result will be undefined.
[node] | The AST node. |
[index] | The index of the action. |
CYPHER_AST_SET_ITEM
node, or null. unsigned int cypher_ast_order_by_nitems | ( | const cypher_astnode_t * | node | ) |
Get the number of items in a CYPHER_AST_ORDER_BY
node.
If the node is not an instance of CYPHER_AST_ORDER_BY
then the result will be undefined.
[node] | The AST node. |
cypher_astnode_t* cypher_ast_pair_map | ( | cypher_astnode_t *const * | pairs, |
unsigned int | nentries, | ||
cypher_astnode_t ** | children, | ||
unsigned int | nchildren, | ||
struct cypher_input_range | range | ||
) |
Construct a CYPHER_AST_MAP
node.
The node will also be an instance of CYPHER_AST_EXPRESSION
.
[pairs] | An alternating list of keys for the map, of type CYPHER_AST_PROP_NAME , and values for the map, of type CYPHER_AST_EXPRESSION . |
[nentries] | The number of pairs (i.e. pairs must contain nentries*2 pointers). |
[children] | The children of the node. |
[nchildren] | The number of children. |
[range] | The input range. |
cypher_astnode_t* cypher_ast_parameter | ( | const char * | s, |
size_t | n, | ||
struct cypher_input_range | range | ||
) |
Construct a CYPHER_AST_PARAMETER
node.
The node will also be an instance of CYPHER_AST_EXPRESSION
.
[s] | A pointer to a character string containing the identifier name. |
[n] | The length of the character string. |
[range] | The input range. |
const char* cypher_ast_parameter_get_name | ( | const cypher_astnode_t * | node | ) |
Get a null terminated name string for a CYPHER_AST_PARAMETER
node.
If the node is not an instance of CYPHER_AST_PARAMETER
then the result will be undefined.
[node] | The AST node. |
cypher_astnode_t* cypher_ast_pattern | ( | cypher_astnode_t *const * | paths, |
unsigned int | npaths, | ||
cypher_astnode_t ** | children, | ||
unsigned int | nchildren, | ||
struct cypher_input_range | range | ||
) |
Construct a CYPHER_AST_PATTERN
node.
[paths] | The paths in the pattern, which must be all of type CYPHER_AST_PATTERN_PATH . |
[npaths] | The number of paths. |
[children] | The children of the node. |
[nchildren] | The number of children. |
[range] | The input range. |
cypher_astnode_t* cypher_ast_pattern_comprehension | ( | const cypher_astnode_t * | identifier, |
const cypher_astnode_t * | pattern, | ||
const cypher_astnode_t * | predicate, | ||
const cypher_astnode_t * | eval, | ||
cypher_astnode_t ** | children, | ||
unsigned int | nchildren, | ||
struct cypher_input_range | range | ||
) |
Construct a CYPHER_AST_PATTERN_COMPREHENSION
node.
The node will also be an instance of CYPHER_AST_EXPRESSION
.
[identifier] | A CYPHER_AST_IDENTIFIER node, or null. |
[pattern] | A CYPHER_AST_PATTERN node. |
[predicate] | A CYPHER_AST_EXPRESSION node, or null. |
[eval] | A CYPHER_AST_EXPRESSION node. |
[children] | The children of the node. |
[nchildren] | The number of children. |
[range] | The input range. |
const cypher_astnode_t* cypher_ast_pattern_comprehension_get_eval | ( | const cypher_astnode_t * | node | ) |
Get the evaluation from a CYPHER_AST_PATTERN_COMPREHENSION
node.
If the node is not an instance of CYPHER_AST_PATTERN_COMPREHENSION
then the result will be undefined.
[node] | The AST node. |
CYPHER_AST_EXPRESSION
node. const cypher_astnode_t* cypher_ast_pattern_comprehension_get_identifier | ( | const cypher_astnode_t * | node | ) |
Get the identifier from a CYPHER_AST_PATTERN_COMPREHENSION
node.
If the node is not an instance of CYPHER_AST_PATTERN_COMPREHENSION
then the result will be undefined.
[node] | The AST node. |
CYPHER_AST_IDENTIFIER
node, or null. const cypher_astnode_t* cypher_ast_pattern_comprehension_get_pattern | ( | const cypher_astnode_t * | node | ) |
Get the expression from a CYPHER_AST_PATTERN_COMPREHENSION
node.
If the node is not an instance of CYPHER_AST_PATTERN_COMPREHENSION
then the result will be undefined.
[node] | The AST node. |
CYPHER_AST_PATTERN_PATH
node. const cypher_astnode_t* cypher_ast_pattern_comprehension_get_predicate | ( | const cypher_astnode_t * | node | ) |
Get the predicate from a CYPHER_AST_PATTERN_COMPREHENSION
node.
If the node is not an instance of CYPHER_AST_PATTERN_COMPREHENSION
then the result will be undefined.
[node] | The AST node. |
CYPHER_AST_EXPRESSION
node, or null. const cypher_astnode_t* cypher_ast_pattern_get_path | ( | const cypher_astnode_t * | node, |
unsigned int | index | ||
) |
Get a path from a CYPHER_AST_PATTERN
node.
If the node is not an instance of CYPHER_AST_PATTERN
then the result will be undefined.
[node] | The AST node. |
[index] | The index of the path. |
CYPHER_AST_PATTERN_PATH
node, or null. unsigned int cypher_ast_pattern_npaths | ( | const cypher_astnode_t * | node | ) |
Get the number of paths in a CYPHER_AST_PATTERN
node.
If the node is not an instance of CYPHER_AST_PATTERN
then the result will be undefined.
[node] | The AST node. |
cypher_astnode_t* cypher_ast_pattern_path | ( | cypher_astnode_t *const * | elements, |
unsigned int | nelements, | ||
cypher_astnode_t ** | children, | ||
unsigned int | nchildren, | ||
struct cypher_input_range | range | ||
) |
Construct a CYPHER_AST_PATTERN_PATH
node.
[elements] | The elements in the pattern, which must be of alternating types CYPHER_AST_NODE_PATTERN and CYPHER_AST_REL_PATTERN . |
[nelements] | The number of elements in the path, which must be odd. |
[children] | The children of the node. |
[nchildren] | The number of children. |
[range] | The input range. |
const cypher_astnode_t* cypher_ast_pattern_path_get_element | ( | const cypher_astnode_t * | node, |
unsigned int | index | ||
) |
Get an element from a CYPHER_AST_PATTERN_PATH
node.
If the node is not an instance of CYPHER_AST_PATTERN_PATH
then the result will be undefined.
[node] | The AST node. |
[index] | The index of the element. |
CYPHER_AST_NODE_PATTERN
node or a CYPHER_AST_REL_PATTERN
node, depending on whether the index is even or odd respectively, or null if the index is larger than the number of elements.. unsigned int cypher_ast_pattern_path_nelements | ( | const cypher_astnode_t * | node | ) |
Get the number of elements in a CYPHER_AST_PATTERN_PATH
node.
If the node is not an instance of CYPHER_AST_PATTERN_PATH
then the result will be undefined.
[node] | The AST node. |
cypher_astnode_t* cypher_ast_proc_name | ( | const char * | s, |
size_t | n, | ||
struct cypher_input_range | range | ||
) |
Construct a CYPHER_AST_PROC_NAME
node.
[s] | A pointer to a character string containing the proc name. |
[n] | The length of the character string. |
[range] | The input range. |
const char* cypher_ast_proc_name_get_value | ( | const cypher_astnode_t * | node | ) |
Get a null terminated name string for a CYPHER_AST_PROC_NAME
node.
If the node is not an instance of CYPHER_AST_PROC_NAME
then the result will be undefined.
[node] | The AST node. |
cypher_astnode_t* cypher_ast_profile_option | ( | cypher_astnode_t ** | children, |
unsigned int | nchildren, | ||
struct cypher_input_range | range | ||
) |
Construct a CYPHER_AST_PROFILE_OPTION
node.
The node will also be an instance of CYPHER_AST_STATEMENT_OPTION
.
[children] | The children of the node. |
[nchildren] | The number of children. |
[range] | The input range. |
cypher_astnode_t* cypher_ast_projection | ( | const cypher_astnode_t * | expression, |
const cypher_astnode_t * | alias, | ||
cypher_astnode_t ** | children, | ||
unsigned int | nchildren, | ||
struct cypher_input_range | range | ||
) |
Construct a CYPHER_AST_PROJECTION
node.
[expression] | A CYPHER_AST_EXPRESSION node. |
[alias] | A CYPHER_AST_IDENTIFIER node, or null. |
[children] | The children of the node. |
[nchildren] | The number of children. |
[range] | The input range. |
const cypher_astnode_t* cypher_ast_projection_get_alias | ( | const cypher_astnode_t * | node | ) |
Get the alias from a CYPHER_AST_PROJECTION
node.
If the node is not an instance of CYPHER_AST_PROJECTION
then the result will be undefined.
[node] | The AST node. |
CYPHER_AST_IDENTIFIER
node, or null. const cypher_astnode_t* cypher_ast_projection_get_expression | ( | const cypher_astnode_t * | node | ) |
Get the expression from a CYPHER_AST_PROJECTION
node.
If the node is not an instance of CYPHER_AST_PROJECTION
then the result will be undefined.
[node] | The AST node. |
CYPHER_AST_EXPRESSION
node. cypher_astnode_t* cypher_ast_prop_name | ( | const char * | s, |
size_t | n, | ||
struct cypher_input_range | range | ||
) |
Construct a CYPHER_AST_PROP_NAME
node.
[s] | A pointer to a character string containing the property name. |
[n] | The length of the character string. |
[range] | The input range. |
const char* cypher_ast_prop_name_get_value | ( | const cypher_astnode_t * | node | ) |
Get a null terminated name string for a CYPHER_AST_PROP_NAME
node.
If the node is not an instance of CYPHER_AST_PROP_NAME
then the result will be undefined.
[node] | The AST node. |
cypher_astnode_t* cypher_ast_property_operator | ( | const cypher_astnode_t * | expression, |
const cypher_astnode_t * | prop_name, | ||
cypher_astnode_t ** | children, | ||
unsigned int | nchildren, | ||
struct cypher_input_range | range | ||
) |
Construct a CYPHER_AST_PROPERTY_OPERATOR
node.
The node will also be an instance of CYPHER_AST_EXPRESSION
.
[expression] | A CYPHER_AST_EXPRESSION node. |
[prop_name] | A CYPHER_AST_PROP_NAME node. |
[children] | The children of the node. |
[nchildren] | The number of children. |
[range] | The input range. |
const cypher_astnode_t* cypher_ast_property_operator_get_expression | ( | const cypher_astnode_t * | node | ) |
Get the expression of a CYPHER_AST_PROPERTY_OPERATOR
node.
If the node is not an instance of CYPHER_AST_PROPERTY_OPERATOR
then the result will be undefined.
[node] | The AST node. |
CYPHER_AST_EXPRESSION
node. const cypher_astnode_t* cypher_ast_property_operator_get_prop_name | ( | const cypher_astnode_t * | node | ) |
Get the property name of a CYPHER_AST_PROPERTY_OPERATOR
node.
If the node is not an instance of CYPHER_AST_PROPERTY_OPERATOR
then the result will be undefined.
[node] | The AST node. |
CYPHER_AST_PROP_NAME
node. cypher_astnode_t* cypher_ast_query | ( | cypher_astnode_t *const * | options, |
unsigned int | noptions, | ||
cypher_astnode_t *const * | clauses, | ||
unsigned int | nclauses, | ||
cypher_astnode_t ** | children, | ||
unsigned int | nchildren, | ||
struct cypher_input_range | range | ||
) |
Construct a CYPHER_AST_QUERY
node.
[options] | Options for the query, all of type CYPHER_AST_QUERY_OPTION . |
[noptions] | The number of options (may be zero). |
[clauses] | Clauses for the query, all of type CYPHER_AST_QUERY_CLAUSE . |
[nclauses] | The number of clauses. |
[children] | The children of the node. |
[nchildren] | The number of children. |
[range] | The input range. |
const cypher_astnode_t* cypher_ast_query_get_clause | ( | const cypher_astnode_t * | node, |
unsigned int | index | ||
) |
Get a clause of a CYPHER_AST_QUERY
node.
If the node is not an instance of CYPHER_AST_QUERY
then the result will be undefined.
[node] | The AST node. |
[index] | The index of the clause. |
CYPHER_AST_QUERY_OPTION
node, or null. const cypher_astnode_t* cypher_ast_query_get_option | ( | const cypher_astnode_t * | node, |
unsigned int | index | ||
) |
Get an option of a CYPHER_AST_QUERY
node.
If the node is not an instance of CYPHER_AST_QUERY
then the result will be undefined.
[node] | The AST node. |
[index] | The index of the option. |
CYPHER_AST_QUERY_OPTION
node, or null. unsigned int cypher_ast_query_nclauses | ( | const cypher_astnode_t * | node | ) |
Get the number of clauses in a CYPHER_AST_QUERY
node.
If the node is not an instance of CYPHER_AST_QUERY
then the result will be undefined.
[node] | The AST node. |
unsigned int cypher_ast_query_noptions | ( | const cypher_astnode_t * | node | ) |
Get the number of options in a CYPHER_AST_QUERY
node.
If the node is not an instance of CYPHER_AST_QUERY
then the result will be undefined.
[node] | The AST node. |
cypher_astnode_t* cypher_ast_range | ( | const cypher_astnode_t * | start, |
const cypher_astnode_t * | end, | ||
cypher_astnode_t ** | children, | ||
unsigned int | nchildren, | ||
struct cypher_input_range | range | ||
) |
Construct a CYPHER_AST_RANGE
node.
[start] | A CYPHER_AST_INTEGER , or null. |
[end] | A CYPHER_AST_INTEGER , or null. |
[children] | The children of the node. |
[nchildren] | The number of children. |
[range] | The input range. |
const cypher_astnode_t* cypher_ast_range_get_end | ( | const cypher_astnode_t * | node | ) |
Get the end of a CYPHER_AST_RANGE
node.
If the node is not an instance of CYPHER_AST_RANGE
then the result will be undefined.
[node] | The AST node. |
CYPHER_AST_RANGE
node, or null. const cypher_astnode_t* cypher_ast_range_get_start | ( | const cypher_astnode_t * | node | ) |
Get the start of a CYPHER_AST_RANGE
node.
If the node is not an instance of CYPHER_AST_RANGE
then the result will be undefined.
[node] | The AST node. |
CYPHER_AST_RANGE
node, or null. cypher_astnode_t* cypher_ast_reduce | ( | const cypher_astnode_t * | accumulator, |
const cypher_astnode_t * | init, | ||
const cypher_astnode_t * | identifier, | ||
const cypher_astnode_t * | expression, | ||
const cypher_astnode_t * | eval, | ||
cypher_astnode_t ** | children, | ||
unsigned int | nchildren, | ||
struct cypher_input_range | range | ||
) |
Construct a CYPHER_AST_REDUCE
node.
The node will also be an instance of CYPHER_AST_EXPRESSION
.
[accumulator] | A CYPHER_AST_IDENTIFIER node. |
[init] | A CYPHER_AST_EXPRESSION node. |
[identifier] | A CYPHER_AST_IDENTIFIER node. |
[expression] | A CYPHER_AST_EXPRESSION node. |
[eval] | A CYPHER_AST_EXPRESSION node, or null. |
[children] | The children of the node. |
[nchildren] | The number of children. |
[range] | The input range. |
const cypher_astnode_t* cypher_ast_reduce_get_accumulator | ( | const cypher_astnode_t * | node | ) |
Get the accumulator from a CYPHER_AST_REDUCE
node.
If the node is not an instance of CYPHER_AST_REDUCE
then the result will be undefined.
[node] | The AST node. |
CYPHER_AST_IDENTIFIER
node. const cypher_astnode_t* cypher_ast_reduce_get_eval | ( | const cypher_astnode_t * | node | ) |
Get the evaluation from a CYPHER_AST_REDUCE
node.
If the node is not an instance of CYPHER_AST_REDUCE
then the result will be undefined.
[node] | The AST node. |
CYPHER_AST_EXPRESSION
node, or null. const cypher_astnode_t* cypher_ast_reduce_get_expression | ( | const cypher_astnode_t * | node | ) |
Get the expression from a CYPHER_AST_REDUCE
node.
If the node is not an instance of CYPHER_AST_REDUCE
then the result will be undefined.
[node] | The AST node. |
CYPHER_AST_EXPRESSION
node. const cypher_astnode_t* cypher_ast_reduce_get_identifier | ( | const cypher_astnode_t * | node | ) |
Get the identifier from a CYPHER_AST_REDUCE
node.
If the node is not an instance of CYPHER_AST_REDUCE
then the result will be undefined.
[node] | The AST node. |
CYPHER_AST_IDENTIFIER
node. const cypher_astnode_t* cypher_ast_reduce_get_init | ( | const cypher_astnode_t * | node | ) |
Get the accumulator init expression from a CYPHER_AST_REDUCE
node.
If the node is not an instance of CYPHER_AST_REDUCE
then the result will be undefined.
[node] | The AST node. |
CYPHER_AST_EXPRESSION
node. cypher_astnode_t* cypher_ast_rel_id_lookup | ( | const cypher_astnode_t * | identifier, |
cypher_astnode_t *const * | ids, | ||
unsigned int | nids, | ||
cypher_astnode_t ** | children, | ||
unsigned int | nchildren, | ||
struct cypher_input_range | range | ||
) |
Construct a CYPHER_AST_REL_ID_LOOKUP
node.
The node will also be an instance of CYPHER_AST_START_POINT
.
[identifier] | A CYPHER_AST_IDENTIFIER node. |
[ids] | Node IDs for lookup, all of type CYPHER_AST_INTEGER . |
[nids] | The number of node IDs. |
[children] | The children of the node. |
[nchildren] | The number of children. |
[range] | The input range. |
const cypher_astnode_t* cypher_ast_rel_id_lookup_get_id | ( | const cypher_astnode_t * | node, |
unsigned int | index | ||
) |
Get an id of a CYPHER_AST_REL_ID_LOOKUP
node.
If the node is not an instance of CYPHER_AST_REL_ID_LOOKUP
then the result will be undefined.
[node] | The AST node. |
[index] | The index of the id. |
CYPHER_AST_INTEGER
node, or null. const cypher_astnode_t* cypher_ast_rel_id_lookup_get_identifier | ( | const cypher_astnode_t * | node | ) |
Get the identifier of a CYPHER_AST_REL_ID_LOOKUP
node.
If the node is not an instance of CYPHER_AST_REL_ID_LOOKUP
then the result will be undefined.
[node] | The AST node. |
CYPHER_AST_IDENTIFIER
node. unsigned int cypher_ast_rel_id_lookup_nids | ( | const cypher_astnode_t * | node | ) |
Get the number of ids in a CYPHER_AST_REL_ID_LOOKUP
node.
If the node is not an instance of CYPHER_AST_REL_ID_LOOKUP
then the result will be undefined.
[node] | The AST node. |
cypher_astnode_t* cypher_ast_rel_index_lookup | ( | const cypher_astnode_t * | identifier, |
const cypher_astnode_t * | index_name, | ||
const cypher_astnode_t * | prop_name, | ||
const cypher_astnode_t * | lookup, | ||
cypher_astnode_t ** | children, | ||
unsigned int | nchildren, | ||
struct cypher_input_range | range | ||
) |
Construct a CYPHER_AST_REL_INDEX_LOOKUP
node.
The node will also be an instance of CYPHER_AST_START_POINT
.
[identifier] | A CYPHER_AST_IDENTIFIER node. |
[index_name] | A CYPHER_AST_INDEX_NAME node. |
[prop_name] | A CYPHER_AST_PROP_NAME node. |
[lookup] | A CYPHER_AST_STRING or CYPHER_AST_PARAMETER node. |
[children] | The children of the node. |
[nchildren] | The number of children. |
[range] | The input range. |
const cypher_astnode_t* cypher_ast_rel_index_lookup_get_identifier | ( | const cypher_astnode_t * | node | ) |
Get the identifier of a CYPHER_AST_REL_INDEX_LOOKUP
node.
If the node is not an instance of CYPHER_AST_REL_INDEX_LOOKUP
then the result will be undefined.
[node] | The AST node. |
CYPHER_AST_IDENTIFIER
node. const cypher_astnode_t* cypher_ast_rel_index_lookup_get_index_name | ( | const cypher_astnode_t * | node | ) |
Get the index name of a CYPHER_AST_REL_INDEX_LOOKUP
node.
If the node is not an instance of CYPHER_AST_REL_INDEX_LOOKUP
then the result will be undefined.
[node] | The AST node. |
CYPHER_AST_INDEX_NAME
node. const cypher_astnode_t* cypher_ast_rel_index_lookup_get_lookup | ( | const cypher_astnode_t * | node | ) |
Get the lookup of a CYPHER_AST_REL_INDEX_LOOKUP
node.
If the node is not an instance of CYPHER_AST_REL_INDEX_LOOKUP
then the result will be undefined.
[node] | The AST node. |
CYPHER_AST_STRING
or CYPHER_AST_PARAMETER
node. const cypher_astnode_t* cypher_ast_rel_index_lookup_get_prop_name | ( | const cypher_astnode_t * | node | ) |
Get the prop name of a CYPHER_AST_REL_INDEX_LOOKUP
node.
If the node is not an instance of CYPHER_AST_REL_INDEX_LOOKUP
then the result will be undefined.
[node] | The AST node. |
CYPHER_AST_PROP_NAME
node. cypher_astnode_t* cypher_ast_rel_index_query | ( | const cypher_astnode_t * | identifier, |
const cypher_astnode_t * | index_name, | ||
const cypher_astnode_t * | query, | ||
cypher_astnode_t ** | children, | ||
unsigned int | nchildren, | ||
struct cypher_input_range | range | ||
) |
Construct a CYPHER_AST_REL_INDEX_QUERY
node.
The node will also be an instance of CYPHER_AST_START_POINT
.
[identifier] | A CYPHER_AST_IDENTIFIER node. |
[index_name] | A CYPHER_AST_INDEX_NAME node. |
[query] | A CYPHER_AST_STRING or CYPHER_AST_PARAMETER node. |
[children] | The children of the node. |
[nchildren] | The number of children. |
[range] | The input range. |
const cypher_astnode_t* cypher_ast_rel_index_query_get_identifier | ( | const cypher_astnode_t * | node | ) |
Get the identifier of a CYPHER_AST_REL_INDEX_QUERY
node.
If the node is not an instance of CYPHER_AST_REL_INDEX_QUERY
then the result will be undefined.
[node] | The AST node. |
CYPHER_AST_IDENTIFIER
node. const cypher_astnode_t* cypher_ast_rel_index_query_get_index_name | ( | const cypher_astnode_t * | node | ) |
Get the index name of a CYPHER_AST_REL_INDEX_QUERY
node.
If the node is not an instance of CYPHER_AST_REL_INDEX_QUERY
then the result will be undefined.
[node] | The AST node. |
CYPHER_AST_INDEX_NAME
node. const cypher_astnode_t* cypher_ast_rel_index_query_get_query | ( | const cypher_astnode_t * | node | ) |
Get the query of a CYPHER_AST_REL_INDEX_QUERY
node.
If the node is not an instance of CYPHER_AST_REL_INDEX_QUERY
then the result will be undefined.
[node] | The AST node. |
CYPHER_AST_STRING
or CYPHER_AST_PARAMETER
node. cypher_astnode_t* cypher_ast_rel_pattern | ( | enum cypher_rel_direction | direction, |
const cypher_astnode_t * | identifier, | ||
cypher_astnode_t *const * | reltypes, | ||
unsigned int | nreltypes, | ||
const cypher_astnode_t * | properties, | ||
const cypher_astnode_t * | varlength, | ||
cypher_astnode_t ** | children, | ||
unsigned int | nchildren, | ||
struct cypher_input_range | range | ||
) |
Construct a CYPHER_AST_REL_PATTERN
node.
[direction] | The direction of the relationship. |
[identifier] | A CYPHER_AST_IDENTIFIER node, or null. |
[reltypes] | The relationship types in the pattern, all of type CYPHER_AST_RELTYPE . |
[nreltypes] | The number of relationship types in the pattern. |
[properties] | A CYPHER_AST_MAP node, a CYPHER_AST_PARAMETER node, or null. |
[varlength] | A CYPHER_AST_RANGE node, or null. |
[children] | The children of the node. |
[nchildren] | The number of children. |
[range] | The input range. |
enum cypher_rel_direction cypher_ast_rel_pattern_get_direction | ( | const cypher_astnode_t * | node | ) |
Get the direction of a CYPHER_AST_REL_PATTERN
node.
If the node is not an instance of CYPHER_AST_REL_PATTERN
then the result will be undefined.
[node] | The AST node. |
const cypher_astnode_t* cypher_ast_rel_pattern_get_identifier | ( | const cypher_astnode_t * | node | ) |
Get the identifier of a CYPHER_AST_REL_PATTERN
node.
If the node is not an instance of CYPHER_AST_REL_PATTERN
then the result will be undefined.
[node] | The AST node. |
CYPHER_AST_IDENTIFIER
node, or null. const cypher_astnode_t* cypher_ast_rel_pattern_get_properties | ( | const cypher_astnode_t * | node | ) |
Get the properties of a CYPHER_AST_REL_PATTERN
node.
If the node is not an instance of CYPHER_AST_REL_PATTERN
then the result will be undefined.
[node] | The AST node. |
CYPHER_AST_MAP
node, a CYPHER_AST_PARAMETER
node, or null. const cypher_astnode_t* cypher_ast_rel_pattern_get_reltype | ( | const cypher_astnode_t * | node, |
unsigned int | index | ||
) |
Get a reltypes from a CYPHER_AST_REL_PATTERN
node.
If the node is not an instance of CYPHER_AST_REL_PATTERN
then the result will be undefined.
[node] | The AST node. |
[index] | The index of the reltypes. |
CYPHER_AST_LABEL
node, or null. const cypher_astnode_t* cypher_ast_rel_pattern_get_varlength | ( | const cypher_astnode_t * | node | ) |
Get the varlength range of a CYPHER_AST_REL_PATTERN
node.
If the node is not an instance of CYPHER_AST_REL_PATTERN
then the result will be undefined.
[node] | The AST node. |
CYPHER_AST_RANGE
node, or null. unsigned int cypher_ast_rel_pattern_nreltypes | ( | const cypher_astnode_t * | node | ) |
Get the number of reltypes in a CYPHER_AST_REL_PATTERN
node.
If the node is not an instance of CYPHER_AST_REL_PATTERN
then the result will be undefined.
[node] | The AST node. |
cypher_astnode_t* cypher_ast_reltype | ( | const char * | s, |
size_t | n, | ||
struct cypher_input_range | range | ||
) |
Construct a CYPHER_AST_RELTYPE
node.
[s] | A pointer to a character string containing the label name. |
[n] | The length of the character string. |
[range] | The input range. |
const char* cypher_ast_reltype_get_name | ( | const cypher_astnode_t * | node | ) |
Get a null terminated name string for a CYPHER_AST_RELTYPE
node.
If the node is not an instance of CYPHER_AST_RELTYPE
then the result will be undefined.
[node] | The AST node. |
cypher_astnode_t* cypher_ast_remove | ( | cypher_astnode_t *const * | items, |
unsigned int | nitems, | ||
cypher_astnode_t ** | children, | ||
unsigned int | nchildren, | ||
struct cypher_input_range | range | ||
) |
Construct a CYPHER_AST_REMOVE
node.
The node will also be an instance of CYPHER_AST_CLAUSE
.
[items] | Items for REMOVE , all of type CYPHER_AST_REMOVE_ITEM . |
[nitems] | The number of items. |
[children] | The children of the node. |
[nchildren] | The number of children. |
[range] | The input range. |
const cypher_astnode_t* cypher_ast_remove_get_item | ( | const cypher_astnode_t * | node, |
unsigned int | index | ||
) |
Get an item from a CYPHER_AST_REMOVE
node.
If the node is not an instance of CYPHER_AST_REMOVE
then the result will be undefined.
[node] | The AST node. |
[index] | The index of the item. |
CYPHER_AST_EXPRESSION
node, or null. cypher_astnode_t* cypher_ast_remove_labels | ( | const cypher_astnode_t * | identifier, |
cypher_astnode_t *const * | labels, | ||
unsigned int | nlabels, | ||
cypher_astnode_t ** | children, | ||
unsigned int | nchildren, | ||
struct cypher_input_range | range | ||
) |
Construct a CYPHER_AST_REMOVE_LABELS
node.
The node will also be an instance of CYPHER_AST_REMOVE_ITEM
.
[identifier] | A CYPHER_AST_IDENTIFIER node. |
[labels] | Labels to remove, all of type CYPHER_AST_LABEL . |
[nlabels] | The number of labels. |
[children] | The children of the node. |
[nchildren] | The number of children. |
[range] | The input range. |
const cypher_astnode_t* cypher_ast_remove_labels_get_identifier | ( | const cypher_astnode_t * | node | ) |
Get the identifier of a CYPHER_AST_REMOVE_LABELS
node.
If the node is not an instance of CYPHER_AST_REMOVE_LABELS
then the result will be undefined.
[node] | The AST node. |
CYPHER_AST_IDENTIFIER
node. const cypher_astnode_t* cypher_ast_remove_labels_get_label | ( | const cypher_astnode_t * | node, |
unsigned int | index | ||
) |
Get a label from a CYPHER_AST_REMOVE_LABELS
node.
If the node is not an instance of CYPHER_AST_REMOVE_LABELS
then the result will be undefined.
[node] | The AST node. |
[index] | The index of the label. |
CYPHER_AST_LABEL
node, or null. unsigned int cypher_ast_remove_labels_nlabels | ( | const cypher_astnode_t * | node | ) |
Get the number of labels in a CYPHER_AST_REMOVE_LABELS
node.
If the node is not an instance of CYPHER_AST_REMOVE_LABELS
then the result will be undefined.
[node] | The AST node. |
unsigned int cypher_ast_remove_nitems | ( | const cypher_astnode_t * | node | ) |
Get the number of items in a CYPHER_AST_REMOVE
node.
If the node is not an instance of CYPHER_AST_REMOVE
then the result will be undefined.
[node] | The AST node. |
cypher_astnode_t* cypher_ast_remove_property | ( | const cypher_astnode_t * | property, |
cypher_astnode_t ** | children, | ||
unsigned int | nchildren, | ||
struct cypher_input_range | range | ||
) |
Construct a CYPHER_AST_REMOVE_PROPERTY
node.
The node will also be an instance of CYPHER_AST_REMOVE_ITEM
.
[property] | A CYPHER_AST_PROPERTY_OPERATOR node. |
[children] | The children of the node. |
[nchildren] | The number of children. |
[range] | The input range. |
const cypher_astnode_t* cypher_ast_remove_property_get_property | ( | const cypher_astnode_t * | node | ) |
Get the property operator of a CYPHER_AST_REMOVE_PROPERTY
node.
If the node is not an instance of CYPHER_AST_REMOVE_PROPERTY
then the result will be undefined.
[node] | The AST node. |
CYPHER_AST_PROPERTY_OPERATOR
node. cypher_astnode_t* cypher_ast_return | ( | bool | distinct, |
bool | include_existing, | ||
cypher_astnode_t *const * | projections, | ||
unsigned int | nprojections, | ||
const cypher_astnode_t * | order_by, | ||
const cypher_astnode_t * | skip, | ||
const cypher_astnode_t * | limit, | ||
cypher_astnode_t ** | children, | ||
unsigned int | nchildren, | ||
struct cypher_input_range | range | ||
) |
Construct a CYPHER_AST_RETURN
node.
The node will also be an instance of CYPHER_AST_CLAUSE
.
[distinct] | true if the DISTINCT keyword is specified. |
[include_existing] | true if including existing identifiers (i.e. RETURN * ). |
[projections] | Projections to return, all of type CYPHER_AST_PROJECTION . |
[nprojections] | The number of projections. |
[order_by] | A CYPHER_AST_ORDER_BY node, or null. |
[skip] | A CYPHER_AST_INTEGER node, or null. |
[limit] | A CYPHER_AST_INTEGER node, or null. |
[children] | The children of the node. |
[nchildren] | The number of children. |
[range] | The input range. |
const cypher_astnode_t* cypher_ast_return_get_limit | ( | const cypher_astnode_t * | node | ) |
Get the limit value of a CYPHER_AST_RETURN
node.
If the node is not an instance of CYPHER_AST_RETURN
then the result will be undefined.
[node] | The AST node. |
CYPHER_AST_INTEGER
node, or null. const cypher_astnode_t* cypher_ast_return_get_order_by | ( | const cypher_astnode_t * | node | ) |
Get the "order by" node of a CYPHER_AST_RETURN
node.
If the node is not an instance of CYPHER_AST_RETURN
then the result will be undefined.
[node] | The AST node. |
CYPHER_AST_ORDER_BY
node, or null. const cypher_astnode_t* cypher_ast_return_get_projection | ( | const cypher_astnode_t * | node, |
unsigned int | index | ||
) |
Get a projection from a CYPHER_AST_RETURN
node.
If the node is not an instance of CYPHER_AST_RETURN
then the result will be undefined.
[node] | The AST node. |
[index] | The index of the identifier. |
CYPHER_AST_PROJECTION
node, or null. const cypher_astnode_t* cypher_ast_return_get_skip | ( | const cypher_astnode_t * | node | ) |
Get the skip value of a CYPHER_AST_RETURN
node.
If the node is not an instance of CYPHER_AST_RETURN
then the result will be undefined.
[node] | The AST node. |
CYPHER_AST_INTEGER
node, or null. bool cypher_ast_return_has_include_existing | ( | const cypher_astnode_t * | node | ) |
Check if including existing identifiers (*
) in a CYPHER_AST_RETURN
node.
If the node is not an instance of CYPHER_AST_RETURN
then the result will be undefined.
[node] | The AST node. |
true
if including existing identifiers, false
otherwise. bool cypher_ast_return_is_distinct | ( | const cypher_astnode_t * | node | ) |
Check if DISTINCT
is set in a CYPHER_AST_RETURN
node.
If the node is not an instance of CYPHER_AST_RETURN
then the result will be undefined.
[node] | The AST node. |
true
if DISTINCT
is set, false
otherwise. unsigned int cypher_ast_return_nprojections | ( | const cypher_astnode_t * | node | ) |
Get the number of projections in a CYPHER_AST_RETURN
node.
If the node is not an instance of CYPHER_AST_RETURN
then the result will be undefined.
[node] | The AST node. |
cypher_astnode_t* cypher_ast_set | ( | cypher_astnode_t *const * | items, |
unsigned int | nitems, | ||
cypher_astnode_t ** | children, | ||
unsigned int | nchildren, | ||
struct cypher_input_range | range | ||
) |
Construct a CYPHER_AST_SET
node.
The node will also be an instance of CYPHER_AST_CLAUSE
.
[items] | Items for SET , all of type CYPHER_AST_SET_ITEM . |
[nitems] | The number of SET items. |
[children] | The children of the node. |
[nchildren] | The number of children. |
[range] | The input range. |
cypher_astnode_t* cypher_ast_set_all_properties | ( | const cypher_astnode_t * | identifier, |
const cypher_astnode_t * | expression, | ||
cypher_astnode_t ** | children, | ||
unsigned int | nchildren, | ||
struct cypher_input_range | range | ||
) |
Construct a CYPHER_AST_SET_ALL_PROPERTIES
node.
The node will also be an instance of CYPHER_AST_SET_ITEM
.
[identifier] | A CYPHER_AST_IDENTIFIER node. |
[expression] | A CYPHER_AST_EXPRESSION node. |
[children] | The children of the node. |
[nchildren] | The number of children. |
[range] | The input range. |
const cypher_astnode_t* cypher_ast_set_all_properties_get_expression | ( | const cypher_astnode_t * | node | ) |
Get the expression of a CYPHER_AST_SET_ALL_PROPERTIES
node.
If the node is not an instance of CYPHER_AST_SET_ALL_PROPERTIES
then the result will be undefined.
[node] | The AST node. |
CYPHER_AST_EXPRESSION
node. const cypher_astnode_t* cypher_ast_set_all_properties_get_identifier | ( | const cypher_astnode_t * | node | ) |
Get the identifier of a CYPHER_AST_SET_ALL_PROPERTIES
node.
If the node is not an instance of CYPHER_AST_SET_ALL_PROPERTIES
then the result will be undefined.
[node] | The AST node. |
CYPHER_AST_IDENTIFIER
node. const cypher_astnode_t* cypher_ast_set_get_item | ( | const cypher_astnode_t * | node, |
unsigned int | index | ||
) |
Get an item from a CYPHER_AST_SET
node.
If the node is not an instance of CYPHER_AST_SET
then the result will be undefined.
[node] | The AST node. |
[index] | The index of the action. |
CYPHER_AST_SET_ITEM
node, or null. cypher_astnode_t* cypher_ast_set_labels | ( | const cypher_astnode_t * | identifier, |
cypher_astnode_t *const * | labels, | ||
unsigned int | nlabels, | ||
cypher_astnode_t ** | children, | ||
unsigned int | nchildren, | ||
struct cypher_input_range | range | ||
) |
Construct a CYPHER_AST_SET_LABELS
node.
The node will also be an instance of CYPHER_AST_SET_ITEM
.
[identifier] | A CYPHER_AST_IDENTIFIER node. |
[labels] | The labels to be set, which must all be of type CYPHER_AST_LABEL . |
[nlabels] | The number of labels to be set. |
[children] | The children of the node. |
[nchildren] | The number of children. |
[range] | The input range. |
const cypher_astnode_t* cypher_ast_set_labels_get_identifier | ( | const cypher_astnode_t * | node | ) |
Get the identifier of a CYPHER_AST_SET_LABELS
node.
If the node is not an instance of CYPHER_AST_SET_LABELS
then the result will be undefined.
[node] | The AST node. |
CYPHER_AST_IDENTIFIER
node. const cypher_astnode_t* cypher_ast_set_labels_get_label | ( | const cypher_astnode_t * | node, |
unsigned int | index | ||
) |
Get a label from a CYPHER_AST_SET_LABELS
node.
If the node is not an instance of CYPHER_AST_SET_LABELS
then the result will be undefined.
[node] | The AST node. |
[index] | The index of the label. |
CYPHER_AST_LABEL
node, or null. unsigned int cypher_ast_set_labels_nlabels | ( | const cypher_astnode_t * | node | ) |
Get the number of labels in a CYPHER_AST_SET_LABELS
node.
If the node is not an instance of CYPHER_AST_SET_LABELS
then the result will be undefined.
[node] | The AST node. |
unsigned int cypher_ast_set_nitems | ( | const cypher_astnode_t * | node | ) |
Get the number of items in a CYPHER_AST_SET
node.
If the node is not an instance of CYPHER_AST_SET
then the result will be undefined.
[node] | The AST node. |
cypher_astnode_t* cypher_ast_set_property | ( | const cypher_astnode_t * | property, |
const cypher_astnode_t * | expression, | ||
cypher_astnode_t ** | children, | ||
unsigned int | nchildren, | ||
struct cypher_input_range | range | ||
) |
Construct a CYPHER_AST_SET_PROPERTY
node.
The node will also be an instance of CYPHER_AST_SET_ITEM
.
[property] | A CYPHER_AST_PROPERTY_OPERATOR node. |
[expression] | A CYPHER_AST_EXPRESSION node. |
[children] | The children of the node. |
[nchildren] | The number of children. |
[range] | The input range. |
const cypher_astnode_t* cypher_ast_set_property_get_expression | ( | const cypher_astnode_t * | node | ) |
Get the expression of a CYPHER_AST_SET_PROPERTY
node.
If the node is not an instance of CYPHER_AST_SET_PROPERTY
then the result will be undefined.
[node] | The AST node. |
CYPHER_AST_EXPRESSION
node. const cypher_astnode_t* cypher_ast_set_property_get_property | ( | const cypher_astnode_t * | node | ) |
Get the property operator of a CYPHER_AST_SET_PROPERTY
node.
If the node is not an instance of CYPHER_AST_SET_PROPERTY
then the result will be undefined.
[node] | The AST node. |
CYPHER_AST_PROPERTY_OPERATOR
node. cypher_astnode_t* cypher_ast_shortest_path | ( | bool | single, |
const cypher_astnode_t * | path, | ||
cypher_astnode_t ** | children, | ||
unsigned int | nchildren, | ||
struct cypher_input_range | range | ||
) |
Construct a CYPHER_AST_SHORTEST_PATH
node.
The node will also be an instance of CYPHER_AST_PATTERN_PATH
and CYPHER_AST_EXPRESSION
.
[single] | true if shortestPath , and false if allShortestPaths . |
[path] | A CYPHER_AST_PATTERN_PATH node. |
[children] | The children of the node. |
[nchildren] | The number of children. |
[range] | The input range. |
const cypher_astnode_t* cypher_ast_shortest_path_get_path | ( | const cypher_astnode_t * | node | ) |
Get the unnamed pattern path from a CYPHER_AST_SHORTEST_PATH
node.
If the node is not an instance of CYPHER_AST_SHORTEST_PATH
then the result will be undefined.
[node] | The AST node. |
CYPHER_AST_PATTERN_PATH
node. bool cypher_ast_shortest_path_is_single | ( | const cypher_astnode_t * | node | ) |
Check if a CYPHER_AST_SHORTEST_PATH
node is for a single path.
If the node is not an instance of CYPHER_AST_SHORTEST_PATH
then the result will be undefined.
[node] | The AST node. |
shortestPath
, and false if allShortestPaths
. cypher_astnode_t* cypher_ast_single | ( | const cypher_astnode_t * | identifier, |
const cypher_astnode_t * | expression, | ||
const cypher_astnode_t * | predicate, | ||
cypher_astnode_t ** | children, | ||
unsigned int | nchildren, | ||
struct cypher_input_range | range | ||
) |
Construct a CYPHER_AST_SINGLE
node.
The node will also be an instance of CYPHER_AST_LIST_COMPREHENSION
.
[identifier] | A CYPHER_AST_IDENTIFIER node. |
[expression] | A CYPHER_AST_EXPRESSION node. |
[predicate] | A CYPHER_AST_EXPRESSION node, or null. |
[children] | The children of the node. |
[nchildren] | The number of children. |
[range] | The input range. |
cypher_astnode_t* cypher_ast_slice_operator | ( | const cypher_astnode_t * | expression, |
const cypher_astnode_t * | start, | ||
const cypher_astnode_t * | end, | ||
cypher_astnode_t ** | children, | ||
unsigned int | nchildren, | ||
struct cypher_input_range | range | ||
) |
Construct a CYPHER_AST_SLICE_OPERATOR
node.
The node will also be an instance of CYPHER_AST_EXPRESSION
.
[expression] | A CYPHER_AST_EXPRESSION node. |
[start] | A CYPHER_AST_EXPRESSION node, or null. |
[end] | A CYPHER_AST_EXPRESSION node, or null. |
[children] | The children of the node. |
[nchildren] | The number of children. |
[range] | The input range. |
const cypher_astnode_t* cypher_ast_slice_operator_get_end | ( | const cypher_astnode_t * | node | ) |
Get the end of a CYPHER_AST_SLICE_OPERATOR
node.
If the node is not an instance of CYPHER_AST_SLICE_OPERATOR
then the result will be undefined.
[node] | The AST node. |
CYPHER_AST_EXPRESSION
node, or null. const cypher_astnode_t* cypher_ast_slice_operator_get_expression | ( | const cypher_astnode_t * | node | ) |
Get the expression of a CYPHER_AST_SLICE_OPERATOR
node.
If the node is not an instance of CYPHER_AST_SLICE_OPERATOR
then the result will be undefined.
[node] | The AST node. |
CYPHER_AST_EXPRESSION
node. const cypher_astnode_t* cypher_ast_slice_operator_get_start | ( | const cypher_astnode_t * | node | ) |
Get the start of a CYPHER_AST_SLICE_OPERATOR
node.
If the node is not an instance of CYPHER_AST_SLICE_OPERATOR
then the result will be undefined.
[node] | The AST node. |
CYPHER_AST_EXPRESSION
node, or null. cypher_astnode_t* cypher_ast_sort_item | ( | const cypher_astnode_t * | expression, |
bool | ascending, | ||
cypher_astnode_t ** | children, | ||
unsigned int | nchildren, | ||
struct cypher_input_range | range | ||
) |
Construct a CYPHER_AST_SORT_ITEM
node.
[expression] | A CYPHER_AST_EXPRESSION node. |
[ascending] | true if the sort item is ascending. |
[children] | The children of the node. |
[nchildren] | The number of children. |
[range] | The input range. |
const cypher_astnode_t* cypher_ast_sort_item_get_expression | ( | const cypher_astnode_t * | node | ) |
Get the expression from a CYPHER_AST_SORT_ITEM
node.
If the node is not an instance of CYPHER_AST_SORT_ITEM
then the result will be undefined.
[node] | The AST node. |
CYPHER_AST_EXPRESSION
node. bool cypher_ast_sort_item_is_ascending | ( | const cypher_astnode_t * | node | ) |
Check if a CYPHER_AST_SORT_ITEM
node is using ascending order.
If the node is not an instance of CYPHER_AST_SORT_ITEM
then the result will be undefined.
[node] | The AST node. |
true
if the sort item is ascending, false
otherwise. cypher_astnode_t* cypher_ast_start | ( | cypher_astnode_t *const * | points, |
unsigned int | npoints, | ||
const cypher_astnode_t * | predicate, | ||
cypher_astnode_t ** | children, | ||
unsigned int | nchildren, | ||
struct cypher_input_range | range | ||
) |
Construct a CYPHER_AST_START
node.
The node will also be an instance of CYPHER_AST_QUERY_CLAUSE
.
[points] | Start points for the statement, all of type CYPHER_AST_START_POINT . |
[npoints] | The number of start points. |
[predicate] | A CYPHER_AST_EXPRESSION , or null. |
[children] | The children of the node. |
[nchildren] | The number of children. |
[range] | The input range. |
const cypher_astnode_t* cypher_ast_start_get_point | ( | const cypher_astnode_t * | node, |
unsigned int | index | ||
) |
Get a start point of a CYPHER_AST_START
node.
If the node is not an instance of CYPHER_AST_START
then the result will be undefined.
[node] | The AST node. |
[index] | The index of the start point. |
CYPHER_AST_QUERY_OPTION
node, or null. const cypher_astnode_t* cypher_ast_start_get_predicate | ( | const cypher_astnode_t * | node | ) |
Get the predicate of a CYPHER_AST_START
node.
If the node is not an instance of CYPHER_AST_START
then the result will be undefined.
[node] | The AST node. |
CYPHER_AST_EXPRESSION
node, or null. unsigned int cypher_ast_start_npoints | ( | const cypher_astnode_t * | node | ) |
Get the number of start points in a CYPHER_AST_START
node.
If the node is not an instance of CYPHER_AST_START
then the result will be undefined.
[node] | The AST node. |
cypher_astnode_t* cypher_ast_statement | ( | cypher_astnode_t *const * | options, |
unsigned int | noptions, | ||
const cypher_astnode_t * | body, | ||
cypher_astnode_t ** | children, | ||
unsigned int | nchildren, | ||
struct cypher_input_range | range | ||
) |
Construct a CYPHER_AST_STATEMENT
node.
[options] | Options for the statement, all of type CYPHER_AST_STATEMENT_OPTION . |
[noptions] | The number of options (may be zero). |
[body] | The body of the statement, which must be either an CYPHER_AST_QUERY or CYPHER_AST_SCHEMA_COMMAND . |
[children] | The children of the node. |
[nchildren] | The number of children. |
[range] | The input range. |
const cypher_astnode_t* cypher_ast_statement_get_body | ( | const cypher_astnode_t * | node | ) |
Get the body of a CYPHER_AST_STATEMENT
node.
If the node is not an instance of CYPHER_AST_STATEMENT
then the result will be undefined.
[node] | The AST node. |
CYPHER_AST_QUERY
or CYPHER_AST_SCHEMA_COMMAND
node. const cypher_astnode_t* cypher_ast_statement_get_option | ( | const cypher_astnode_t * | node, |
unsigned int | index | ||
) |
Get an option of a CYPHER_AST_STATEMENT
node.
If the node is not an instance of CYPHER_AST_STATEMENT
then the result will be undefined.
[node] | The AST node. |
[index] | The index of the option. |
CYPHER_AST_STATEMENT_OPTION
node, or null. unsigned int cypher_ast_statement_noptions | ( | const cypher_astnode_t * | node | ) |
Get the number of options in a CYPHER_AST_STATEMENT
node.
If the node is not an instance of CYPHER_AST_STATEMENT
then the result will be undefined.
[node] | The AST node. |
cypher_astnode_t* cypher_ast_string | ( | const char * | s, |
size_t | n, | ||
struct cypher_input_range | range | ||
) |
Construct a CYPHER_AST_STRING
node.
The node will also be an instance of CYPHER_AST_EXPRESSION
.
[s] | A pointer to a character string. |
[n] | The length of the character string. |
[range] | The input range. |
const char* cypher_ast_string_get_value | ( | const cypher_astnode_t * | node | ) |
Get the null terminated string value from a CYPHER_AST_STRING
node.
If the node is not an instance of CYPHER_AST_STRING
then the result will be undefined.
[node] | The AST node. |
cypher_astnode_t* cypher_ast_subscript_operator | ( | const cypher_astnode_t * | expression, |
const cypher_astnode_t * | subscript, | ||
cypher_astnode_t ** | children, | ||
unsigned int | nchildren, | ||
struct cypher_input_range | range | ||
) |
Construct a CYPHER_AST_SUBSCRIPT_OPERATOR
node.
The node will also be an instance of CYPHER_AST_EXPRESSION
.
[expression] | A CYPHER_AST_EXPRESSION node. |
[subscript] | A CYPHER_AST_EXPRESSION node. |
[children] | The children of the node. |
[nchildren] | The number of children. |
[range] | The input range. |
const cypher_astnode_t* cypher_ast_subscript_operator_get_expression | ( | const cypher_astnode_t * | node | ) |
Get the expression of a CYPHER_AST_SUBSCRIPT_OPERATOR
node.
If the node is not an instance of CYPHER_AST_SUBSCRIPT_OPERATOR
then the result will be undefined.
[node] | The AST node. |
CYPHER_AST_EXPRESSION
node. const cypher_astnode_t* cypher_ast_subscript_operator_get_subscript | ( | const cypher_astnode_t * | node | ) |
Get the subscript of a CYPHER_AST_SUBSCRIPT_OPERATOR
node.
If the node is not an instance of CYPHER_AST_SUBSCRIPT_OPERATOR
then the result will be undefined.
[node] | The AST node. |
CYPHER_AST_EXPRESSION
node. cypher_astnode_t* cypher_ast_true | ( | struct cypher_input_range | range | ) |
Construct a CYPHER_AST_TRUE
node.
The node will also be an instance of CYPHER_AST_EXPRESSION
.
[range] | The input range. |
cypher_astnode_t* cypher_ast_unary_operator | ( | const cypher_operator_t * | op, |
const cypher_astnode_t * | arg, | ||
cypher_astnode_t ** | children, | ||
unsigned int | nchildren, | ||
struct cypher_input_range | range | ||
) |
Construct a CYPHER_AST_UNARY_OPERATOR
node.
The node will also be an instance of CYPHER_AST_EXPRESSION
.
[op] | The operator. |
[arg] | The argument to the unary operator, of type CYPHER_AST_EXPRESSION . |
[children] | The children of the node. |
[nchildren] | The number of children. |
[range] | The input range. |
const cypher_astnode_t* cypher_ast_unary_operator_get_argument | ( | const cypher_astnode_t * | node | ) |
Get the argument of a CYPHER_AST_UNARY_OPERATOR
node.
If the node is not an instance of CYPHER_AST_UNARY_OPERATOR
then the result will be undefined.
[node] | The AST node. |
CYPHER_AST_EXPRESSION
. const cypher_operator_t* cypher_ast_unary_operator_get_operator | ( | const cypher_astnode_t * | node | ) |
Get the operator of a CYPHER_AST_UNARY_OPERATOR
node.
If the node is not an instance of CYPHER_AST_UNARY_OPERATOR
then the result will be undefined.
[node] | The AST node. |
cypher_astnode_t* cypher_ast_union | ( | bool | all, |
cypher_astnode_t ** | children, | ||
unsigned int | nchildren, | ||
struct cypher_input_range | range | ||
) |
Construct a CYPHER_AST_UNION
node.
The node will also be an instance of CYPHER_AST_CLAUSE
.
[all] | true if ALL is specified for the union. |
[children] | The children of the node. |
[nchildren] | The number of children. |
[range] | The input range. |
bool cypher_ast_union_has_all | ( | const cypher_astnode_t * | node | ) |
Check if a CYPHER_AST_UNION
node has ALL
specified.
If the node is not an instance of CYPHER_AST_UNION
then the result will be undefined.
[node] | The AST node. |
true
if ALL
is specified, false
otherwise. cypher_astnode_t* cypher_ast_unwind | ( | const cypher_astnode_t * | expression, |
const cypher_astnode_t * | alias, | ||
cypher_astnode_t ** | children, | ||
unsigned int | nchildren, | ||
struct cypher_input_range | range | ||
) |
Construct a CYPHER_AST_UNWIND
node.
The node will also be an instance of CYPHER_AST_CLAUSE
.
[expression] | A CYPHER_AST_EXPRESSION node. |
[alias] | A CYPHER_AST_IDENTIFIER node. |
[children] | The children of the node. |
[nchildren] | The number of children. |
[range] | The input range. |
const cypher_astnode_t* cypher_ast_unwind_get_alias | ( | const cypher_astnode_t * | node | ) |
Get the alias of a CYPHER_AST_UNWIND
node.
If the node is not an instance of CYPHER_AST_UNWIND
then the result will be undefined.
[node] | The AST node. |
CYPHER_AST_EXPRESSION
node. const cypher_astnode_t* cypher_ast_unwind_get_expression | ( | const cypher_astnode_t * | node | ) |
Get the expression of a CYPHER_AST_UNWIND
node.
If the node is not an instance of CYPHER_AST_UNWIND
then the result will be undefined.
[node] | The AST node. |
CYPHER_AST_EXPRESSION
node. cypher_astnode_t* cypher_ast_using_index | ( | const cypher_astnode_t * | identifier, |
const cypher_astnode_t * | label, | ||
const cypher_astnode_t * | prop_name, | ||
cypher_astnode_t ** | children, | ||
unsigned int | nchildren, | ||
struct cypher_input_range | range | ||
) |
Construct a CYPHER_AST_USING_INDEX
node.
The node will also be an instance of CYPHER_AST_MATCH_HINT
.
[identifier] | A CYPHER_AST_IDENTIFIER node. |
[label] | A CYPHER_AST_LABEL node. |
[prop_name] | A CYPHER_AST_PROP_NAME node. |
[children] | The children of the node. |
[nchildren] | The number of children. |
[range] | The input range. |
const cypher_astnode_t* cypher_ast_using_index_get_identifier | ( | const cypher_astnode_t * | node | ) |
Get the identifer of a CYPHER_AST_USING_INDEX
node.
If the node is not an instance of CYPHER_AST_USING_INDEX
then the result will be undefined.
[node] | The AST node. |
CYPHER_AST_IDENTIFIER
node. const cypher_astnode_t* cypher_ast_using_index_get_label | ( | const cypher_astnode_t * | node | ) |
Get the label of a CYPHER_AST_USING_INDEX
node.
If the node is not an instance of CYPHER_AST_USING_INDEX
then the result will be undefined.
[node] | The AST node. |
CYPHER_AST_IDENTIFIER
node. const cypher_astnode_t* cypher_ast_using_index_get_prop_name | ( | const cypher_astnode_t * | node | ) |
Get the label of a CYPHER_AST_USING_INDEX
node.
If the node is not an instance of CYPHER_AST_USING_INDEX
then the result will be undefined.
[node] | The AST node. |
CYPHER_AST_PROP_NAME
node. cypher_astnode_t* cypher_ast_using_join | ( | cypher_astnode_t *const * | identifiers, |
unsigned int | nidentifiers, | ||
cypher_astnode_t ** | children, | ||
unsigned int | nchildren, | ||
struct cypher_input_range | range | ||
) |
Construct a CYPHER_AST_USING_JOIN
node.
The node will also be an instance of CYPHER_AST_MATCH_HINT
.
[identifiers] | Identifiers for the hint, all of type CYPHER_AST_IDENTIFIER . |
[nidentifiers] | The number of identifiers |
[children] | The children of the node. |
[nchildren] | The number of children. |
[range] | The input range. |
const cypher_astnode_t* cypher_ast_using_join_get_identifier | ( | const cypher_astnode_t * | node, |
unsigned int | index | ||
) |
Get a identifier from a CYPHER_AST_USING_JOIN
node.
If the node is not an instance of CYPHER_AST_USING_JOIN
then the result will be undefined.
[node] | The AST node. |
[index] | The index of the identifier. |
CYPHER_AST_IDENTIFIER
node, or null. unsigned int cypher_ast_using_join_nidentifiers | ( | const cypher_astnode_t * | node | ) |
Get the number of identifiers in a CYPHER_AST_USING_JOIN
node.
If the node is not an instance of CYPHER_AST_USING_JOIN
then the result will be undefined.
[node] | The AST node. |
cypher_astnode_t* cypher_ast_using_periodic_commit | ( | const cypher_astnode_t * | limit, |
cypher_astnode_t ** | children, | ||
unsigned int | nchildren, | ||
struct cypher_input_range | range | ||
) |
Construct a CYPHER_AST_USING_PERIODIC_COMMIT
node.
The node will also be an instance of CYPHER_AST_QUERY_OPTION
.
[limit] | A CYPHER_AST_INTEGER , or null. |
[children] | The children of the node. |
[nchildren] | The number of children. |
[range] | The input range. |
const cypher_astnode_t* cypher_ast_using_periodic_commit_get_limit | ( | const cypher_astnode_t * | node | ) |
Get the limit of a CYPHER_AST_USING_PERIODIC_COMMIT
node.
If the node is not an instance of CYPHER_AST_USING_PERIODIC_COMMIT
then the result will be undefined.
[node] | The AST node. |
CYPHER_AST_INTEGER
node, or null. cypher_astnode_t* cypher_ast_using_scan | ( | const cypher_astnode_t * | identifier, |
const cypher_astnode_t * | label, | ||
cypher_astnode_t ** | children, | ||
unsigned int | nchildren, | ||
struct cypher_input_range | range | ||
) |
Construct a CYPHER_AST_USING_SCAN
node.
The node will also be an instance of CYPHER_AST_MATCH_HINT
.
[identifier] | A CYPHER_AST_IDENTIFIER node. |
[label] | A CYPHER_AST_LABEL node. |
[children] | The children of the node. |
[nchildren] | The number of children. |
[range] | The input range. |
const cypher_astnode_t* cypher_ast_using_scan_get_identifier | ( | const cypher_astnode_t * | node | ) |
Get the identifer of a CYPHER_AST_USING_SCAN
node.
If the node is not an instance of CYPHER_AST_USING_SCAN
then the result will be undefined.
[node] | The AST node. |
CYPHER_AST_IDENTIFIER
node. const cypher_astnode_t* cypher_ast_using_scan_get_label | ( | const cypher_astnode_t * | node | ) |
Get the label of a CYPHER_AST_USING_SCAN
node.
If the node is not an instance of CYPHER_AST_USING_SCAN
then the result will be undefined.
[node] | The AST node. |
CYPHER_AST_IDENTIFIER
node. cypher_astnode_t* cypher_ast_with | ( | bool | distinct, |
bool | include_existing, | ||
cypher_astnode_t *const * | projections, | ||
unsigned int | nprojections, | ||
const cypher_astnode_t * | order_by, | ||
const cypher_astnode_t * | skip, | ||
const cypher_astnode_t * | limit, | ||
const cypher_astnode_t * | predicate, | ||
cypher_astnode_t ** | children, | ||
unsigned int | nchildren, | ||
struct cypher_input_range | range | ||
) |
Construct a CYPHER_AST_WITH
node.
The node will also be an instance of CYPHER_AST_CLAUSE
.
[distinct] | true if the DISTINCT keyword is specified. |
[include_existing] | true if including existing identifiers (i.e. WITH * ). |
[projections] | Projections for with, all of type CYPHER_AST_PROJECTION . |
[nprojections] | The number of projections. |
[order_by] | A CYPHER_AST_ORDER_BY node, or null. |
[skip] | A CYPHER_AST_INTEGER node, or null. |
[limit] | A CYPHER_AST_INTEGER node, or null. |
[predicate] | A CYPHER_AST_EXPRESSION node, or null. |
[children] | The children of the node. |
[nchildren] | The number of children. |
[range] | The input range. |
const cypher_astnode_t* cypher_ast_with_get_limit | ( | const cypher_astnode_t * | node | ) |
Get the limit value of a CYPHER_AST_WITH
node.
If the node is not an instance of CYPHER_AST_WITH
then the result will be undefined.
[node] | The AST node. |
CYPHER_AST_INTEGER
node, or null. const cypher_astnode_t* cypher_ast_with_get_order_by | ( | const cypher_astnode_t * | node | ) |
Get the "order by" node of a CYPHER_AST_WITH
node.
If the node is not an instance of CYPHER_AST_WITH
then the result will be undefined.
[node] | The AST node. |
CYPHER_AST_ORDER_BY
node, or null. const cypher_astnode_t* cypher_ast_with_get_predicate | ( | const cypher_astnode_t * | node | ) |
Get the predicate of a CYPHER_AST_WITH
node.
If the node is not an instance of CYPHER_AST_WITH
then the result will be undefined.
[node] | The AST node. |
CYPHER_AST_EXPRESSION
node, or null. const cypher_astnode_t* cypher_ast_with_get_projection | ( | const cypher_astnode_t * | node, |
unsigned int | index | ||
) |
Get a projection from a CYPHER_AST_WITH
node.
If the node is not an instance of CYPHER_AST_WITH
then the result will be undefined.
[node] | The AST node. |
[index] | The index of the identifier. |
CYPHER_AST_PROJECTION
node, or null. const cypher_astnode_t* cypher_ast_with_get_skip | ( | const cypher_astnode_t * | node | ) |
Get the skip value of a CYPHER_AST_WITH
node.
If the node is not an instance of CYPHER_AST_WITH
then the result will be undefined.
[node] | The AST node. |
CYPHER_AST_INTEGER
node, or null. bool cypher_ast_with_has_include_existing | ( | const cypher_astnode_t * | node | ) |
Check if including existing identifiers (*
) in a CYPHER_AST_WITH
node.
If the node is not an instance of CYPHER_AST_WITH
then the result will be undefined.
[node] | The AST node. |
true
if including existing identifiers, false
otherwise. bool cypher_ast_with_is_distinct | ( | const cypher_astnode_t * | node | ) |
Check if DISTINCT
is present for a CYPHER_AST_WITH
node.
If the node is not an instance of CYPHER_AST_WITH
then the result will be undefined.
[node] | The AST node. |
true
if DISTINCT
is set, false
otherwise. unsigned int cypher_ast_with_nprojections | ( | const cypher_astnode_t * | node | ) |
Get the number of projections in a CYPHER_AST_WITH
node.
If the node is not an instance of CYPHER_AST_WITH
then the result will be undefined.
[node] | The AST node. |
const cypher_astnode_t* cypher_astnode_get_child | ( | const cypher_astnode_t * | node, |
unsigned int | index | ||
) |
Get a child from an AST node.
[node] | The AST node. |
[index] | The index of the child. |
NULL
if there is no argument at the specified index. bool cypher_astnode_instanceof | ( | const cypher_astnode_t * | node, |
cypher_astnode_type_t | type | ||
) |
Check the type of an AST node.
[node] | The AST node. |
[type] | The AST node type. |
true
if the node is of the specified type and false
otherwise. unsigned int cypher_astnode_nchildren | ( | const cypher_astnode_t * | node | ) |
Get the number of children from an AST node.
[node] | The AST node. |
struct cypher_input_range cypher_astnode_range | ( | const cypher_astnode_t * | node | ) |
Get the range of an AST node in the input.
[node] | The AST node. |
cypher_astnode_type_t cypher_astnode_type | ( | const cypher_astnode_t * | node | ) |
Get the type of an AST node.
[node] | The AST node. |
const char* cypher_astnode_typestr | ( | cypher_astnode_type_t | type | ) |
Get a string description of the AST node type.
[type] | The AST node type. |
cypher_parse_result_t* cypher_fparse | ( | FILE * | stream, |
struct cypher_input_position * | last, | ||
cypher_parser_config_t * | config, | ||
uint_fast32_t | flags | ||
) |
Parse a statement or command from a stream.
All statements and/or client commands are parsed from the input string, and a result returned. The result must be passed to cypher_parse_result_free() to release dynamically allocated memory. If the flag CYPHER_PARSE_ONLY_STATEMENTS is set, client commands will not be parsed.
[stream] | The stream to parse. |
[last] | Either NULL , or a pointer to a struct cypher_input_position that will be set position of the last character consumed from the input. |
[config] | Either NULL , or a pointer to configuration for the parser. |
[flags] | A bitmask of flags to control parsing. |
cypher_parse_result_t
, or NULL
if an error occurs (errno will be set). int cypher_fparse_each | ( | FILE * | stream, |
cypher_parser_segment_callback_t | callback, | ||
void * | userdata, | ||
struct cypher_input_position * | last, | ||
cypher_parser_config_t * | config, | ||
uint_fast32_t | flags | ||
) |
Parse segments from a stream.
The provided callback is invoked for every segment of parsed input, where each segments is separated by either a newline or semicolon (;
), respectively depending on whether a client command is being parsed or not. If the flag CYPHER_PARSE_ONLY_STATEMENTS is set, then only semicolons will be used for delimiting segments, and client commands will not be parsed.
The segment will be released after the callback is complete, unless retained using cypher_parse_segment_retain().
[stream] | The stream to parse. |
[callback] | The callback to be invoked for each parsed segment. |
[userdata] | A pointer that will be provided to the callback. |
[last] | Either NULL , or a pointer to a struct cypher_input_position that will be set position of the last character consumed from the input. |
[config] | Either NULL , or a pointer to configuration for the parser. |
[flags] | A bitmask of flags to control parsing. |
cypher_parse_result_t
, or NULL
if an error occurs (errno will be set). cypher_parse_result_t * cypher_parse | ( | const char * | s, |
struct cypher_input_position * | last, | ||
cypher_parser_config_t * | config, | ||
uint_fast32_t | flags | ||
) |
Parse a command or statement from a string.
All statements and/or client commands are parsed from the input string, and a result returned. The result must be passed to cypher_parse_result_free() to release dynamically allocated memory. If the flag CYPHER_PARSE_ONLY_STATEMENTS is set, client commands will not be parsed.
[s] | A null terminated string to parse. |
[last] | Either NULL , or a pointer to a struct cypher_input_position that will be set position of the last character consumed from the input. |
[config] | Either NULL , or a pointer to configuration for the parser. |
[flags] | A bitmask of flags to control parsing. |
cypher_parse_result_t
, or NULL
if an error occurs (errno will be set). int cypher_parse_each | ( | const char * | s, |
cypher_parser_segment_callback_t | callback, | ||
void * | userdata, | ||
struct cypher_input_position * | last, | ||
cypher_parser_config_t * | config, | ||
uint_fast32_t | flags | ||
) |
Parse segments from a string.
The provided callback is invoked for every segment of parsed input, where each segments is separated by either a newline or semicolon (;
), respectively depending on whether a client command is being parsed or not. If the flag CYPHER_PARSE_ONLY_STATEMENTS is set, then only semicolons will be used for delimiting segments, and client commands will not be parsed.
The segment will be released after the callback is complete, unless retained using cypher_parse_segment_retain().
[s] | A null terminated string to parse. |
[callback] | The callback to be invoked for each parsed segment. |
[userdata] | A pointer that will be provided to the callback. |
[last] | Either NULL , or a pointer to a struct cypher_input_position that will be set position of the last character consumed from the input. |
[config] | Either NULL , or a pointer to configuration for the parser. |
[flags] | A bitmask of flags to control parsing. |
const char* cypher_parse_error_context | ( | const cypher_parse_error_t * | error | ) |
Get the error context of an error.
This returns a pointer to a null-terminated string, which contains a section of the input around where the error occurred, that is limited in length and suitable for presentation to a user.
[error] | The parse error. |
size_t cypher_parse_error_context_offset | ( | const cypher_parse_error_t * | error | ) |
Get the offset into the context of an error.
Identifies the point of the error within the context string, allowing this to be reported to the user, typically with an arrow pointing to the invalid character.
[error] | The parse error. |
const char* cypher_parse_error_message | ( | const cypher_parse_error_t * | error | ) |
Get the error message of an error.
[error] | The parse error. |
struct cypher_input_position cypher_parse_error_position | ( | const cypher_parse_error_t * | error | ) |
Get the position of an error.
[error] | The parse error. |
bool cypher_parse_result_eof | ( | const cypher_parse_result_t * | result | ) |
Check if the parse encountered the end of the input.
Indicates if the last parsed command or statement was terminated (with a newline or ;
respectively), or with EOF.
[result] | The parse result. |
true
if the end of input was encountered, false
if the command or statement was terminated with the expected character. int cypher_parse_result_fprint_ast | ( | const cypher_parse_result_t * | result, |
FILE * | stream, | ||
unsigned int | width, | ||
const struct cypher_parser_colorization * | colorization, | ||
uint_fast32_t | flags | ||
) |
Print a represetation of a parse result to a stream.
Useful for debugging purposes.
[result] | The parse result. |
[stream] | The stream to print to. |
[width] | The width to render, which is advisory and may be exceeded. A value of 0 implies no restriction on width. |
[colorization] | A colorization scheme to apply, or null. |
[flags] | A bitmask of flags to control rendering. |
void cypher_parse_result_free | ( | cypher_parse_result_t * | result | ) |
Free memory associated with a parse result.
The result will no longer be valid after this function is invoked.
[result] | The parse result. |
const cypher_astnode_t* cypher_parse_result_get_directive | ( | const cypher_parse_result_t * | result, |
unsigned int | index | ||
) |
Get the AST for a parsed statement or command from a parse result.
[result] | The parse result. |
[index] | The directive index. |
NULL
if there is no directive at the specified index. const cypher_parse_error_t* cypher_parse_result_get_error | ( | const cypher_parse_result_t * | result, |
unsigned int | index | ||
) |
Get an error description from a parse result.
[result] | The parse result. |
[index] | The error index. |
NULL
if there is no value at the specified index. const cypher_astnode_t* cypher_parse_result_get_root | ( | const cypher_parse_result_t * | result, |
unsigned int | index | ||
) |
Get a root AST nodes from a parse result.
[result] | The parse result. |
[index] | The node index. |
NULL
if there is no element at the specified index. unsigned int cypher_parse_result_ndirectives | ( | const cypher_parse_result_t * | result | ) |
Get the number of statements or commands parsed.
[result] | The parse result. |
unsigned int cypher_parse_result_nerrors | ( | const cypher_parse_result_t * | result | ) |
Get the number of errors encountered during parsing.
[result] | The parse result. |
unsigned int cypher_parse_result_nnodes | ( | const cypher_parse_result_t * | result | ) |
Get the total number of AST nodes parsed.
Includes all children, at any depth, of all result elements.
[result] | The parse result. |
unsigned int cypher_parse_result_nroots | ( | const cypher_parse_result_t * | result | ) |
Get the number of root AST nodes parsed.
[result] | The parse result. |
int cypher_parse_segment_fprint_ast | ( | const cypher_parse_segment_t * | segment, |
FILE * | stream, | ||
unsigned int | width, | ||
const struct cypher_parser_colorization * | colorization, | ||
uint_fast32_t | flags | ||
) |
Print a represetation of the AST from a parse segment to a stream.
Useful for debugging purposes.
[segment] | The parse segment. |
[stream] | The stream to print to. |
[width] | The width to render, which is advisory and may be exceeded. A value of 0 implies no restriction on width. |
[colorization] | A colorization scheme to apply, or null. |
[flags] | A bitmask of flags to control rendering. |
const cypher_astnode_t* cypher_parse_segment_get_directive | ( | const cypher_parse_segment_t * | segment | ) |
Get the statement or client command parsed in a segment.
[segment] | The parse segment. |
NULL
if neither was encountered in the segment. const cypher_parse_error_t* cypher_parse_segment_get_error | ( | const cypher_parse_segment_t * | segment, |
unsigned int | index | ||
) |
Get an error from a parse segment.
[segment] | The parse segment. |
[index] | The error index. |
NULL
if there is no error at the specified index. struct cypher_input_range cypher_parse_segment_get_range | ( | const cypher_parse_segment_t * | segment | ) |
Get the range of a parse segment.
[segment] | The parse segment. |
const cypher_astnode_t* cypher_parse_segment_get_root | ( | const cypher_parse_segment_t * | segment, |
unsigned int | index | ||
) |
Get a root AST node from a parse segment.
[segment] | The parse segment. |
[index] | The node index. |
NULL
if there is no node at the specified index. bool cypher_parse_segment_is_eof | ( | const cypher_parse_segment_t * | segment | ) |
Check if the parse encountered the end of the input.
Indicates if the segment was terminated by to the end of the input.
[segment] | The parse segment. |
true
if the end of input was encountered, false
if the segment was terminated with an expected character. unsigned int cypher_parse_segment_nerrors | ( | const cypher_parse_segment_t * | segment | ) |
Get the number of errors encountered in a parse segment.
[segment] | The parse segment. |
unsigned int cypher_parse_segment_nnodes | ( | const cypher_parse_segment_t * | segment | ) |
Get the total number of AST nodes parsed in a segment.
Includes all root nodes and their children, at any depth.
[segment] | The parse segment. |
unsigned int cypher_parse_segment_nroots | ( | const cypher_parse_segment_t * | segment | ) |
Get the number of root AST nodes parsed in a segment.
[segment] | The parse segment. |
void cypher_parse_segment_release | ( | cypher_parse_segment_t * | segment | ) |
Release a reference to a parse segment.
The segment must have been previously retained using cypher_parse_segment_retain().
[segment] | The parse segment. |
void cypher_parse_segment_retain | ( | cypher_parse_segment_t * | segment | ) |
Retain a reference to a parse segment.
The segment must later be passed to cypher_parse_segment_release().
[segment] | The parse segment. |
void cypher_parser_config_free | ( | cypher_parser_config_t * | config | ) |
Release a parser configuration.
[config] | A pointer to a parser configuration. This pointer will be invalid after the function returns. |
void cypher_parser_config_set_error_colorization | ( | cypher_parser_config_t * | config, |
const struct cypher_parser_colorization * | colorization | ||
) |
Set the colorization scheme for error messages.
[config] | The parser configuration. |
[colorization] | The colorization scheme to use. |
void cypher_parser_config_set_initial_ordinal | ( | cypher_parser_config_t * | config, |
unsigned int | n | ||
) |
Set the initial ordinal for parsing.
All AST nodes parsed will be numbered starting from the specified initial ordinal, which is 0 by default. This affects the numbering of AST nodes in rendering.
[config] | The parser configuration. |
[n] | The initial oridinal. |
void cypher_parser_config_set_initial_position | ( | cypher_parser_config_t * | config, |
struct cypher_input_position | position | ||
) |
Set the initial input position for parsing.
By default, the initial position is line 1, column 1 (offset 0). By setting a different position, all ranges in the AST, and positions in any error messages, will be offset by the specified position - as if the input had contained unparsed whitespace up until that point.
[config] | The parser configuration. |
[position] | The initial input position. |
cypher_parser_config_t* cypher_parser_new_config | ( | void | ) |
Generate a new parser configuration.
The returned configuration must be later released using cypher_parser_config_free().
NULL
if an error occurs (errno will be set). int cypher_quick_fparse | ( | FILE * | stream, |
cypher_parser_quick_segment_callback_t | callback, | ||
void * | userdata, | ||
uint_fast32_t | flags | ||
) |
Quick parse a statement or command from a stream.
The provided callback is invoked for every segment of parsed input, where each segments is separated by either a newline or semicolon (;
), respectively depending on whether a client command is being parsed or not. If the flag CYPHER_PARSE_ONLY_STATEMENTS is set, then only semicolons will be used for delimiting segments, and client commands will not be parsed.
[stream] | The stream to parse. |
[callback] | The callback to be invoked for each parsed segment. |
[userdata] | A pointer that will be provided to the callback. |
[flags] | A bitmask of flags to control parsing. |
int cypher_quick_parse | ( | const char * | s, |
cypher_parser_quick_segment_callback_t | callback, | ||
void * | userdata, | ||
uint_fast32_t | flags | ||
) |
Quick parse segments from a string.
The provided callback is invoked for every segment of parsed input, where each segments is separated by either a newline or semicolon (;
), respectively depending on whether a client command is being parsed or not. If the flag CYPHER_PARSE_ONLY_STATEMENTS is set, then only semicolons will be used for delimiting segments, and client commands will not be parsed.
[s] | The string to parse. |
[callback] | The callback to be invoked for each parsed segment. |
[userdata] | A pointer that will be provided to the callback. |
[flags] | A bitmask of flags to control parsing. |
struct cypher_input_position cypher_quick_parse_segment_get_next | ( | const cypher_quick_parse_segment_t * | segment | ) |
Get the next input position that will be parsed.
[segment] | The parse segment. |
struct cypher_input_range cypher_quick_parse_segment_get_range | ( | const cypher_quick_parse_segment_t * | segment | ) |
Get the range of a quick parse segment.
[segment] | The quick parse segment. |
const char* cypher_quick_parse_segment_get_text | ( | const cypher_quick_parse_segment_t * | segment, |
size_t * | n | ||
) |
Get the character string of a segment.
Will include all characters within the parsed statement or command, excepting any leading or trailing comments or whitespace.
[segment] | The quick parse segment. |
[n] | A size_t pointer that will be updated to the length of the character string. |
bool cypher_quick_parse_segment_is_command | ( | const cypher_quick_parse_segment_t * | segment | ) |
Check if the quick parse segment is for a command.
[segment] | The quick parse segment. |
true
if the parsed segment was for a command (vs a statement), false
otherwise. bool cypher_quick_parse_segment_is_eof | ( | const cypher_quick_parse_segment_t * | segment | ) |
Check if the quick parse encountered the end of the input.
Indicates if the segment was terminated by to the end of the input.
[segment] | The quick parse segment. |
true
if the end of input was encountered, false
if the segment was terminated with an expected character. bool cypher_quick_parse_segment_is_statement | ( | const cypher_quick_parse_segment_t * | segment | ) |
Check if the quick parse segment is for a statement.
[segment] | The quick parse segment. |
true
if the parsed segment was for a statement (vs a command), false
otherwise. int cypher_quick_uparse | ( | const char * | s, |
size_t | n, | ||
cypher_parser_quick_segment_callback_t | callback, | ||
void * | userdata, | ||
uint_fast32_t | flags | ||
) |
Quick parse segments from a string.
The provided callback is invoked for every segment of parsed input, where each segments is separated by either a newline or semicolon (;
), respectively depending on whether a client command is being parsed or not. If the flag CYPHER_PARSE_ONLY_STATEMENTS is set, then only semicolons will be used for delimiting segments, and client commands will not be parsed.
[s] | The string to parse. |
[n] | The size of the string. |
[callback] | The callback to be invoked for each parsed segment. |
[userdata] | A pointer that will be provided to the callback. |
[flags] | A bitmask of flags to control parsing. |
cypher_parse_result_t* cypher_uparse | ( | const char * | s, |
size_t | n, | ||
struct cypher_input_position * | last, | ||
cypher_parser_config_t * | config, | ||
uint_fast32_t | flags | ||
) |
Parse a statement or command from a string.
All statements and/or client commands are parsed from the input string, and a result returned. The result must be passed to cypher_parse_result_free() to release dynamically allocated memory. If the flag CYPHER_PARSE_ONLY_STATEMENTS is set, client commands will not be parsed.
[s] | The string to parse. |
[n] | The size of the string. |
[last] | Either NULL , or a pointer to a struct cypher_input_position that will be set position of the last character consumed from the input. |
[config] | Either NULL , or a pointer to configuration for the parser. |
[flags] | A bitmask of flags to control parsing. |
cypher_parse_result_t
, or NULL
if an error occurs (errno will be set). int cypher_uparse_each | ( | const char * | s, |
size_t | n, | ||
cypher_parser_segment_callback_t | callback, | ||
void * | userdata, | ||
struct cypher_input_position * | last, | ||
cypher_parser_config_t * | config, | ||
uint_fast32_t | flags | ||
) |
Parse segments from a string.
The provided callback is invoked for every segment of parsed input, where each segments is separated by either a newline or semicolon (;
), respectively depending on whether a client command is being parsed or not. If the flag CYPHER_PARSE_ONLY_STATEMENTS is set, then only semicolons will be used for delimiting segments, and client commands will not be parsed.
The segment will be released after the callback is complete, unless retained using cypher_parse_segment_retain().
[s] | The string to parse. |
[n] | The size of the string. |
[callback] | The callback to be invoked for each parsed segment. |
[userdata] | A pointer that will be provided to the callback. |
[last] | Either NULL , or a pointer to a struct cypher_input_position that will be set position of the last character consumed from the input. |
[config] | Either NULL , or a pointer to configuration for the parser. |
[flags] | A bitmask of flags to control parsing. |
cypher_parse_result_t
, or NULL
if an error occurs (errno will be set). const cypher_astnode_type_t CYPHER_AST_ALL |
Type for an AST all predicate node.
const cypher_astnode_type_t CYPHER_AST_ALL_NODES_SCAN |
Type for an AST all-nodes-scan node.
const cypher_astnode_type_t CYPHER_AST_ALL_RELS_SCAN |
Type for an AST all-rels-scan node.
const cypher_astnode_type_t CYPHER_AST_ANY |
Type for an AST any predicate node.
const cypher_astnode_type_t CYPHER_AST_APPLY_ALL_OPERATOR |
Type for an AST apply * operator node.
const cypher_astnode_type_t CYPHER_AST_APPLY_OPERATOR |
Type for an AST apply operator node.
const cypher_astnode_type_t CYPHER_AST_BINARY_OPERATOR |
Type for an AST binary operator node.
const cypher_astnode_type_t CYPHER_AST_BLOCK_COMMENT |
Type for an AST block comment node.
const cypher_astnode_type_t CYPHER_AST_BOOLEAN |
Type for an AST boolean literal node.
const cypher_astnode_type_t CYPHER_AST_CALL |
Type for an AST CALL
clause node.
const cypher_astnode_type_t CYPHER_AST_CASE |
Type for an AST CASE expression node.
const cypher_astnode_type_t CYPHER_AST_COLLECTION |
Type for an AST collection node.
const cypher_astnode_type_t CYPHER_AST_COMMAND |
Type for an AST command node.
const cypher_astnode_type_t CYPHER_AST_COMMENT |
Type for an AST comment node.
const cypher_astnode_type_t CYPHER_AST_COMPARISON |
Type for an AST n-ary comparison operator node.
const cypher_astnode_type_t CYPHER_AST_CREATE |
Type for an AST CREATE
clause node.
const cypher_astnode_type_t CYPHER_AST_CREATE_NODE_PROP_CONSTRAINT |
Type for an AST create node property constraint node.
const cypher_astnode_type_t CYPHER_AST_CREATE_NODE_PROP_INDEX |
Type for an AST CREATE INDEX
node.
const cypher_astnode_type_t CYPHER_AST_CREATE_REL_PROP_CONSTRAINT |
Type for an AST create rel property constraint node.
const cypher_astnode_type_t CYPHER_AST_CYPHER_OPTION |
Type for an AST CYPHER
option node.
const cypher_astnode_type_t CYPHER_AST_CYPHER_OPTION_PARAM |
Type for an AST CYPHER
option parameter node.
const cypher_astnode_type_t CYPHER_AST_DELETE |
Type for an AST DELETE
clause node.
const cypher_astnode_type_t CYPHER_AST_DROP_NODE_PROP_CONSTRAINT |
Type for an AST drop node property constraint node.
const cypher_astnode_type_t CYPHER_AST_DROP_NODE_PROP_INDEX |
Type for an AST DROP INDEX
node.
const cypher_astnode_type_t CYPHER_AST_DROP_REL_PROP_CONSTRAINT |
Type for an AST drop rel property constraint node.
const cypher_astnode_type_t CYPHER_AST_ERROR |
Type for an AST error node.
const cypher_astnode_type_t CYPHER_AST_EXPLAIN_OPTION |
Type for an AST EXPLAIN
option node.
const cypher_astnode_type_t CYPHER_AST_EXPRESSION |
Type for an AST expression node.
const cypher_astnode_type_t CYPHER_AST_EXTRACT |
Type for an AST extract expression node.
const cypher_astnode_type_t CYPHER_AST_FALSE |
Type for an AST FALSE literal node.
const cypher_astnode_type_t CYPHER_AST_FILTER |
Type for an AST filter expression node.
const cypher_astnode_type_t CYPHER_AST_FLOAT |
Type for an AST float literal node.
const cypher_astnode_type_t CYPHER_AST_FOREACH |
Type for an AST FOREACH
clause node.
const cypher_astnode_type_t CYPHER_AST_FUNCTION_NAME |
Type for an AST function name node.
const cypher_astnode_type_t CYPHER_AST_IDENTIFIER |
Type for an AST identifier node.
const cypher_astnode_type_t CYPHER_AST_INDEX_NAME |
Type for an AST index name node.
const cypher_astnode_type_t CYPHER_AST_INTEGER |
Type for an AST integer literal node.
const cypher_astnode_type_t CYPHER_AST_LABEL |
Type for an AST label node.
const cypher_astnode_type_t CYPHER_AST_LABELS_OPERATOR |
Type for an AST label check operator node.
const cypher_astnode_type_t CYPHER_AST_LINE_COMMENT |
Type for an AST line comment node.
const cypher_astnode_type_t CYPHER_AST_LIST_COMPREHENSION |
Type for an AST list comprehension node.
const cypher_astnode_type_t CYPHER_AST_LOAD_CSV |
Type for an AST LOAD CSV
clause node.
const cypher_astnode_type_t CYPHER_AST_MAP |
Type for an AST literal map node.
const cypher_astnode_type_t CYPHER_AST_MAP_PROJECTION |
Type for an AST map projection operator node.
const cypher_astnode_type_t CYPHER_AST_MAP_PROJECTION_ALL_PROPERTIES |
Type for an AST map projection all properties entry node.
const cypher_astnode_type_t CYPHER_AST_MAP_PROJECTION_IDENTIFIER |
Type for an AST map projection identifier entry node.
const cypher_astnode_type_t CYPHER_AST_MAP_PROJECTION_LITERAL |
Type for an AST map projection literal entry node.
const cypher_astnode_type_t CYPHER_AST_MAP_PROJECTION_PROPERTY |
Type for an AST map projection property entry node.
const cypher_astnode_type_t CYPHER_AST_MAP_PROJECTION_SELECTOR |
Type for an AST map projection selector node.
const cypher_astnode_type_t CYPHER_AST_MATCH |
Type for an AST MATCH
clause node.
const cypher_astnode_type_t CYPHER_AST_MATCH_HINT |
Type for an AST match hint node.
const cypher_astnode_type_t CYPHER_AST_MERGE |
Type for an AST MERGE
clause node.
const cypher_astnode_type_t CYPHER_AST_MERGE_ACTION |
Type for an AST merge action node.
const cypher_astnode_type_t CYPHER_AST_MERGE_PROPERTIES |
Type for an AST merge properties node.
const cypher_astnode_type_t CYPHER_AST_NAMED_PATH |
Type for an AST named pattern path node.
const cypher_astnode_type_t CYPHER_AST_NODE_ID_LOOKUP |
Type for an AST node-by-id-lookup node.
const cypher_astnode_type_t CYPHER_AST_NODE_INDEX_LOOKUP |
Type for an AST node-index lookup node.
const cypher_astnode_type_t CYPHER_AST_NODE_INDEX_QUERY |
Type for an AST node-index query node.
const cypher_astnode_type_t CYPHER_AST_NODE_PATTERN |
Type for an AST node pattern node.
const cypher_astnode_type_t CYPHER_AST_NONE |
Type for an AST none predicate node.
const cypher_astnode_type_t CYPHER_AST_NULL |
Type for an AST NULL literal node.
const cypher_astnode_type_t CYPHER_AST_ON_CREATE |
Type for an AST ON CREATE
action node.
const cypher_astnode_type_t CYPHER_AST_ON_MATCH |
Type for an AST ON MATCH
action node.
const cypher_astnode_type_t CYPHER_AST_ORDER_BY |
Type for an AST ORDER BY
node.
const cypher_astnode_type_t CYPHER_AST_PARAMETER |
Type for an AST parameter node.
const cypher_astnode_type_t CYPHER_AST_PATTERN |
Type for an AST pattern node.
const cypher_astnode_type_t CYPHER_AST_PATTERN_COMPREHENSION |
Type for an AST pattern comprehension node.
const cypher_astnode_type_t CYPHER_AST_PATTERN_PATH |
Type for an AST pattern path node.
const cypher_astnode_type_t CYPHER_AST_PROC_NAME |
Type for an AST procedure name node.
const cypher_astnode_type_t CYPHER_AST_PROFILE_OPTION |
Type for an AST PROFILE
option node.
const cypher_astnode_type_t CYPHER_AST_PROJECTION |
Type for an AST projection node.
const cypher_astnode_type_t CYPHER_AST_PROP_NAME |
Type for an AST prop name node.
const cypher_astnode_type_t CYPHER_AST_PROPERTY_OPERATOR |
Type for an AST property operator node.
const cypher_astnode_type_t CYPHER_AST_QUERY |
Type for an AST query node.
const cypher_astnode_type_t CYPHER_AST_QUERY_CLAUSE |
Type for an AST query clause node.
const cypher_astnode_type_t CYPHER_AST_QUERY_OPTION |
Type for an AST query option node.
const cypher_astnode_type_t CYPHER_AST_RANGE |
Type for an AST range node.
const cypher_astnode_type_t CYPHER_AST_REDUCE |
Type for an AST reduce expression node.
const cypher_astnode_type_t CYPHER_AST_REL_ID_LOOKUP |
Type for an AST rel-by-id-lookup node.
const cypher_astnode_type_t CYPHER_AST_REL_INDEX_LOOKUP |
Type for an AST rel-index lookup node.
const cypher_astnode_type_t CYPHER_AST_REL_INDEX_QUERY |
Type for an AST rel-index query node.
const cypher_astnode_type_t CYPHER_AST_REL_PATTERN |
Type for an AST relationship pattern node.
const cypher_astnode_type_t CYPHER_AST_RELTYPE |
Type for an AST reltype node.
const cypher_astnode_type_t CYPHER_AST_REMOVE |
Type for an AST REMOVE
clause node.
const cypher_astnode_type_t CYPHER_AST_REMOVE_ITEM |
Type for an AST remove item node.
const cypher_astnode_type_t CYPHER_AST_REMOVE_LABELS |
Type for an AST remove labels node.
const cypher_astnode_type_t CYPHER_AST_REMOVE_PROPERTY |
Type for an AST remove property node.
const cypher_astnode_type_t CYPHER_AST_RETURN |
Type for an AST RETURN
clause node.
const cypher_astnode_type_t CYPHER_AST_SCHEMA_COMMAND |
Type for an AST schema command node.
const cypher_astnode_type_t CYPHER_AST_SET |
Type for an AST SET
clause node.
const cypher_astnode_type_t CYPHER_AST_SET_ALL_PROPERTIES |
Type for an AST set all properties node.
const cypher_astnode_type_t CYPHER_AST_SET_ITEM |
Type for an AST set item node.
const cypher_astnode_type_t CYPHER_AST_SET_LABELS |
Type for an AST set labels node.
const cypher_astnode_type_t CYPHER_AST_SET_PROPERTY |
Type for an AST set property node.
const cypher_astnode_type_t CYPHER_AST_SHORTEST_PATH |
Type for an AST shortestPath node.
const cypher_astnode_type_t CYPHER_AST_SINGLE |
Type for an AST single predicate node.
const cypher_astnode_type_t CYPHER_AST_SLICE_OPERATOR |
Type for an AST slice operator node.
const cypher_astnode_type_t CYPHER_AST_SORT_ITEM |
Type for an AST sort item node.
const cypher_astnode_type_t CYPHER_AST_START |
Type for an AST START
clause node.
const cypher_astnode_type_t CYPHER_AST_START_POINT |
Type for an AST start point node.
const cypher_astnode_type_t CYPHER_AST_STATEMENT |
Type for an AST statement node.
const cypher_astnode_type_t CYPHER_AST_STATEMENT_OPTION |
Type for an AST statement option node.
const cypher_astnode_type_t CYPHER_AST_STRING |
Type for an AST string literal node.
const cypher_astnode_type_t CYPHER_AST_SUBSCRIPT_OPERATOR |
Type for an AST subscript operator node.
const cypher_astnode_type_t CYPHER_AST_TRUE |
Type for an AST TRUE literal node.
const cypher_astnode_type_t CYPHER_AST_UNARY_OPERATOR |
Type for an AST unary operator node.
const cypher_astnode_type_t CYPHER_AST_UNION |
Type for an AST UNION
clause node.
const cypher_astnode_type_t CYPHER_AST_UNWIND |
Type for an AST UNWIND
clause node.
const cypher_astnode_type_t CYPHER_AST_USING_INDEX |
Type for an AST USING INDEX
hint node.
const cypher_astnode_type_t CYPHER_AST_USING_JOIN |
Type for an AST USING JOIN ON
hint node.
const cypher_astnode_type_t CYPHER_AST_USING_PERIODIC_COMMIT |
Type for an AST USING PERIODIC COMMIT
clause node.
const cypher_astnode_type_t CYPHER_AST_USING_SCAN |
Type for an AST USING SCAN
hint node.
const cypher_astnode_type_t CYPHER_AST_WITH |
Type for an AST WITH
clause node.
const cypher_operator_t* CYPHER_OP_AND |
The infix binary AND
operator.
const cypher_operator_t* CYPHER_OP_CONTAINS |
The infix binary CONTAINS
operator.
const cypher_operator_t* CYPHER_OP_DIV |
The infix binary /
operator.
const cypher_operator_t* CYPHER_OP_ENDS_WITH |
The infix binary ENDS WITH
operator.
const cypher_operator_t* CYPHER_OP_EQUAL |
The infix binary =
operator.
const cypher_operator_t* CYPHER_OP_GT |
The n-ary >
operator.
const cypher_operator_t* CYPHER_OP_GTE |
The n-ary >=
operator.
const cypher_operator_t* CYPHER_OP_IN |
The infix binary IN
operator.
const cypher_operator_t* CYPHER_OP_IS_NOT_NULL |
The postfix unary IS NOT NULL
operator.
const cypher_operator_t* CYPHER_OP_IS_NULL |
The postfix unary IS NULL
operator.
const cypher_operator_t* CYPHER_OP_LABEL |
The n-ary label check (l:r
) operator.
const cypher_operator_t* CYPHER_OP_LT |
The n-ary <
operator.
const cypher_operator_t* CYPHER_OP_LTE |
The n-ary <=
operator.
const cypher_operator_t* CYPHER_OP_MAP_PROJECTION |
The postfix binary map projection ({exp}
) operator.
const cypher_operator_t* CYPHER_OP_MINUS |
The infix binary -
operator.
const cypher_operator_t* CYPHER_OP_MOD |
The infix binary %
operator.
const cypher_operator_t* CYPHER_OP_MULT |
The infix binary *
operator.
const cypher_operator_t* CYPHER_OP_NEQUAL |
The infix binary <>
operator.
const cypher_operator_t* CYPHER_OP_NOT |
The prefix unary NOT
operator.
const cypher_operator_t* CYPHER_OP_OR |
The infix binary OR
operator.
const cypher_operator_t* CYPHER_OP_PLUS |
The infix binary +
operator.
const cypher_operator_t* CYPHER_OP_POW |
The infix binary ^
operator.
const cypher_operator_t* CYPHER_OP_PROPERTY |
The infix binary property lookup (l.r
) operator.
const cypher_operator_t* CYPHER_OP_REGEX |
The infix binary =~
operator.
const cypher_operator_t* CYPHER_OP_STARTS_WITH |
The infix binary STARTS WITH
operator.
const cypher_operator_t* CYPHER_OP_SUBSCRIPT |
The postfix binary subscript ([exp]
) operator.
const cypher_operator_t* CYPHER_OP_UNARY_MINUS |
The prefix unary -
operator.
const cypher_operator_t* CYPHER_OP_UNARY_PLUS |
The prefix unary +
operator.
const cypher_operator_t* CYPHER_OP_XOR |
The infix binary XOR
operator.
const struct cypher_parser_colorization* cypher_parser_ansi_colorization |
Colorization rules for ANSI terminal output.
const struct cypher_parser_colorization* cypher_parser_no_colorization |
Colorization rules for uncolorized output.