#pragma once #include #include #include namespace Node { /*relationships_exist constants*/ constexpr std::string_view kProcedureRelationshipsExist = "relationships_exist"; constexpr std::string_view kReturnRelationshipsExist = "result"; constexpr std::string_view kArgumentNodesRelationshipsExist = "node"; constexpr std::string_view kArgumentRelationshipsRelationshipsExist = "relationships"; /* relationship_exists constants */ constexpr std::string_view kReturnRelationshipExists = "exists"; constexpr std::string_view kProcedureRelationshipExists = "relationship_exists"; constexpr std::string_view kArgumentsNode = "node"; constexpr std::string_view kArgumentsPattern = "pattern"; constexpr std::string_view kResultRelationshipExists = "exists"; /* relationship_types constants */ constexpr std::string_view kProcedureRelationshipTypes = "relationship_types"; constexpr std::string_view kRelationshipTypesArg1 = "node"; constexpr std::string_view kRelationshipTypesArg2 = "types"; constexpr std::string_view kResultRelationshipTypes = "relationship_types"; /* degree_in constants */ constexpr std::string_view kFunctionDegreeIn = "degree_in"; constexpr std::string_view kDegreeInArg1 = "node"; constexpr std::string_view kDegreeInArg2 = "type"; /* degree_out constants */ constexpr std::string_view kFunctionDegreeOut = "degree_out"; constexpr std::string_view kDegreeOutArg1 = "node"; constexpr std::string_view kDegreeOutArg2 = "type"; void RelationshipsExist(mgp_list *args, mgp_graph *memgraph_graph, mgp_result *result, mgp_memory *memory); bool RelationshipExist(const mgp::Node &node, std::string &rel_type); bool FindRelationship(std::unordered_set types, mgp::Relationships relationships); void RelationshipExists(mgp_list *args, mgp_graph *memgraph_graph, mgp_result *result, mgp_memory *memory); void RelationshipTypes(mgp_list *args, mgp_graph *memgraph_graph, mgp_result *result, mgp_memory *memory); void DegreeIn(mgp_list *args, mgp_func_context *ctx, mgp_func_result *res, mgp_memory *memory); void DegreeOut(mgp_list *args, mgp_func_context *ctx, mgp_func_result *res, mgp_memory *memory); } // namespace Node