Documentation
¶
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func NewExecutableSchema ¶
func NewExecutableSchema(cfg Config) graphql.ExecutableSchema
NewExecutableSchema creates an ExecutableSchema from the ResolverRoot interface.
Types ¶
type ComplexityRoot ¶
type ComplexityRoot struct {
BulkCreateResult struct {
Created func(childComplexity int) int
Errors func(childComplexity int) int
Skipped func(childComplexity int) int
}
BulkDeleteResult struct {
Deleted func(childComplexity int) int
NotFound func(childComplexity int) int
}
CypherResult struct {
Columns func(childComplexity int) int
ExecutionTimeMs func(childComplexity int) int
RowCount func(childComplexity int) int
Rows func(childComplexity int) int
Stats func(childComplexity int) int
}
CypherStats struct {
ContainsUpdates func(childComplexity int) int
LabelsAdded func(childComplexity int) int
LabelsRemoved func(childComplexity int) int
NodesCreated func(childComplexity int) int
NodesDeleted func(childComplexity int) int
PropertiesSet func(childComplexity int) int
RelationshipsCreated func(childComplexity int) int
RelationshipsDeleted func(childComplexity int) int
}
DatabaseStats struct {
EmbeddedNodeCount func(childComplexity int) int
Labels func(childComplexity int) int
MemoryUsageBytes func(childComplexity int) int
NodeCount func(childComplexity int) int
RelationshipCount func(childComplexity int) int
RelationshipTypes func(childComplexity int) int
UptimeSeconds func(childComplexity int) int
}
DecayResult struct {
AverageDecayScore func(childComplexity int) int
NodesDecayed func(childComplexity int) int
NodesProcessed func(childComplexity int) int
}
EmbeddingStatus struct {
Embedded func(childComplexity int) int
Pending func(childComplexity int) int
Total func(childComplexity int) int
WorkerRunning func(childComplexity int) int
}
GraphSchema struct {
Constraints func(childComplexity int) int
NodeLabels func(childComplexity int) int
NodePropertyKeys func(childComplexity int) int
RelationshipPropertyKeys func(childComplexity int) int
RelationshipTypes func(childComplexity int) int
}
LabelStats struct {
Count func(childComplexity int) int
Label func(childComplexity int) int
}
Mutation struct {
BulkCreateNodes func(childComplexity int, input models.BulkCreateNodesInput) int
BulkCreateRelationships func(childComplexity int, input models.BulkCreateRelationshipsInput) int
BulkDeleteNodes func(childComplexity int, ids []string) int
BulkDeleteRelationships func(childComplexity int, ids []string) int
ClearAll func(childComplexity int, confirmPhrase string) int
CreateNode func(childComplexity int, input models.CreateNodeInput) int
CreateRelationship func(childComplexity int, input models.CreateRelationshipInput) int
DeleteNode func(childComplexity int, id string) int
DeleteRelationship func(childComplexity int, id string) int
ExecuteCypher func(childComplexity int, input models.CypherInput) int
MergeNode func(childComplexity int, labels []string, matchProperties models.JSON, setProperties models.JSON) int
MergeRelationship func(childComplexity int, startNodeID string, endNodeID string, typeArg string, properties models.JSON) int
RebuildSearchIndex func(childComplexity int) int
RunDecay func(childComplexity int) int
TriggerEmbedding func(childComplexity int, regenerate *bool) int
UpdateNode func(childComplexity int, input models.UpdateNodeInput) int
UpdateRelationship func(childComplexity int, input models.UpdateRelationshipInput) int
}
Node struct {
AccessCount func(childComplexity int) int
CreatedAt func(childComplexity int) int
DecayScore func(childComplexity int) int
EmbeddingDimensions func(childComplexity int) int
HasEmbedding func(childComplexity int) int
ID func(childComplexity int) int
Incoming func(childComplexity int, types []string, limit *int) int
InternalID func(childComplexity int) int
Labels func(childComplexity int) int
LastAccessed func(childComplexity int) int
Neighbors func(childComplexity int, direction *models.RelationshipDirection, relationshipTypes []string, labels []string, limit *int) int
Outgoing func(childComplexity int, types []string, limit *int) int
Properties func(childComplexity int) int
Relationships func(childComplexity int, types []string, direction *models.RelationshipDirection, limit *int) int
Similar func(childComplexity int, limit *int, threshold *float64) int
UpdatedAt func(childComplexity int) int
}
Query struct {
AllNodes func(childComplexity int, labels []string, limit *int, offset *int) int
AllPaths func(childComplexity int, startNodeID string, endNodeID string, maxDepth *int, limit *int) int
AllRelationships func(childComplexity int, types []string, limit *int, offset *int) int
Cypher func(childComplexity int, input models.CypherInput) int
Labels func(childComplexity int) int
Neighborhood func(childComplexity int, nodeID string, depth *int, relationshipTypes []string, labels []string, limit *int) int
Node func(childComplexity int, id string) int
NodeCount func(childComplexity int, label *string) int
Nodes func(childComplexity int, ids []string) int
NodesByLabel func(childComplexity int, label string, limit *int, offset *int) int
Relationship func(childComplexity int, id string) int
RelationshipCount func(childComplexity int, typeArg *string) int
RelationshipTypes func(childComplexity int) int
RelationshipsBetween func(childComplexity int, startNodeID string, endNodeID string) int
RelationshipsByType func(childComplexity int, typeArg string, limit *int, offset *int) int
Schema func(childComplexity int) int
Search func(childComplexity int, query string, options *models.SearchOptions) int
SearchByProperty func(childComplexity int, key string, value models.JSON, labels []string, limit *int) int
ShortestPath func(childComplexity int, startNodeID string, endNodeID string, maxDepth *int, relationshipTypes []string) int
Similar func(childComplexity int, nodeID string, limit *int, threshold *float64) int
Stats func(childComplexity int) int
}
Relationship struct {
AutoGenerated func(childComplexity int) int
Confidence func(childComplexity int) int
CreatedAt func(childComplexity int) int
EndNode func(childComplexity int) int
ID func(childComplexity int) int
InternalID func(childComplexity int) int
Properties func(childComplexity int) int
StartNode func(childComplexity int) int
Type func(childComplexity int) int
UpdatedAt func(childComplexity int) int
}
RelationshipTypeStats struct {
Count func(childComplexity int) int
Type func(childComplexity int) int
}
SchemaConstraint struct {
EntityType func(childComplexity int) int
LabelsOrTypes func(childComplexity int) int
Name func(childComplexity int) int
Properties func(childComplexity int) int
Type func(childComplexity int) int
}
SearchResponse struct {
BM25SearchUsed func(childComplexity int) int
ExecutionTimeMs func(childComplexity int) int
Method func(childComplexity int) int
Results func(childComplexity int) int
TotalCount func(childComplexity int) int
VectorSearchUsed func(childComplexity int) int
}
SearchResult struct {
BM25Rank func(childComplexity int) int
BM25Score func(childComplexity int) int
FoundBy func(childComplexity int) int
Node func(childComplexity int) int
RRFScore func(childComplexity int) int
Score func(childComplexity int) int
VectorRank func(childComplexity int) int
VectorScore func(childComplexity int) int
}
SimilarNode struct {
Node func(childComplexity int) int
Similarity func(childComplexity int) int
}
Subgraph struct {
Nodes func(childComplexity int) int
Relationships func(childComplexity int) int
}
Subscription struct {
NodeCreated func(childComplexity int, labels []string) int
NodeDeleted func(childComplexity int, labels []string) int
NodeUpdated func(childComplexity int, id *string, labels []string) int
RelationshipCreated func(childComplexity int, types []string) int
RelationshipDeleted func(childComplexity int, types []string) int
RelationshipUpdated func(childComplexity int, id *string, types []string) int
SearchStream func(childComplexity int, query string, options *models.SearchOptions) int
}
}
type Config ¶
type Config struct {
Schema *ast.Schema
Resolvers ResolverRoot
Directives DirectiveRoot
Complexity ComplexityRoot
}
type CypherResultResolver ¶
type DirectiveRoot ¶
type DirectiveRoot struct {
}
type MutationResolver ¶
type MutationResolver interface {
CreateNode(ctx context.Context, input models.CreateNodeInput) (*models.Node, error)
UpdateNode(ctx context.Context, input models.UpdateNodeInput) (*models.Node, error)
DeleteNode(ctx context.Context, id string) (bool, error)
BulkCreateNodes(ctx context.Context, input models.BulkCreateNodesInput) (*models.BulkCreateResult, error)
BulkDeleteNodes(ctx context.Context, ids []string) (*models.BulkDeleteResult, error)
MergeNode(ctx context.Context, labels []string, matchProperties models.JSON, setProperties models.JSON) (*models.Node, error)
CreateRelationship(ctx context.Context, input models.CreateRelationshipInput) (*models.Relationship, error)
UpdateRelationship(ctx context.Context, input models.UpdateRelationshipInput) (*models.Relationship, error)
DeleteRelationship(ctx context.Context, id string) (bool, error)
BulkCreateRelationships(ctx context.Context, input models.BulkCreateRelationshipsInput) (*models.BulkCreateResult, error)
BulkDeleteRelationships(ctx context.Context, ids []string) (*models.BulkDeleteResult, error)
MergeRelationship(ctx context.Context, startNodeID string, endNodeID string, typeArg string, properties models.JSON) (*models.Relationship, error)
ExecuteCypher(ctx context.Context, input models.CypherInput) (*models.CypherResult, error)
TriggerEmbedding(ctx context.Context, regenerate *bool) (*models.EmbeddingStatus, error)
RebuildSearchIndex(ctx context.Context) (bool, error)
RunDecay(ctx context.Context) (*models.DecayResult, error)
ClearAll(ctx context.Context, confirmPhrase string) (bool, error)
}
type NodeResolver ¶
type NodeResolver interface {
Relationships(ctx context.Context, obj *models.Node, types []string, direction *models.RelationshipDirection, limit *int) ([]models.Relationship, error)
Outgoing(ctx context.Context, obj *models.Node, types []string, limit *int) ([]models.Relationship, error)
Incoming(ctx context.Context, obj *models.Node, types []string, limit *int) ([]models.Relationship, error)
Neighbors(ctx context.Context, obj *models.Node, direction *models.RelationshipDirection, relationshipTypes []string, labels []string, limit *int) ([]models.Node, error)
Similar(ctx context.Context, obj *models.Node, limit *int, threshold *float64) ([]models.SimilarNode, error)
}
type QueryResolver ¶
type QueryResolver interface {
Node(ctx context.Context, id string) (*models.Node, error)
Nodes(ctx context.Context, ids []string) ([]models.Node, error)
AllNodes(ctx context.Context, labels []string, limit *int, offset *int) ([]models.Node, error)
NodesByLabel(ctx context.Context, label string, limit *int, offset *int) ([]models.Node, error)
NodeCount(ctx context.Context, label *string) (int, error)
Relationship(ctx context.Context, id string) (*models.Relationship, error)
AllRelationships(ctx context.Context, types []string, limit *int, offset *int) ([]models.Relationship, error)
RelationshipsByType(ctx context.Context, typeArg string, limit *int, offset *int) ([]models.Relationship, error)
RelationshipsBetween(ctx context.Context, startNodeID string, endNodeID string) ([]models.Relationship, error)
RelationshipCount(ctx context.Context, typeArg *string) (int, error)
Search(ctx context.Context, query string, options *models.SearchOptions) (*models.SearchResponse, error)
Similar(ctx context.Context, nodeID string, limit *int, threshold *float64) ([]models.SimilarNode, error)
SearchByProperty(ctx context.Context, key string, value models.JSON, labels []string, limit *int) ([]models.Node, error)
Cypher(ctx context.Context, input models.CypherInput) (*models.CypherResult, error)
Stats(ctx context.Context) (*models.DatabaseStats, error)
Schema(ctx context.Context) (*models.GraphSchema, error)
Labels(ctx context.Context) ([]string, error)
RelationshipTypes(ctx context.Context) ([]string, error)
ShortestPath(ctx context.Context, startNodeID string, endNodeID string, maxDepth *int, relationshipTypes []string) ([]models.Node, error)
AllPaths(ctx context.Context, startNodeID string, endNodeID string, maxDepth *int, limit *int) ([][]models.Node, error)
Neighborhood(ctx context.Context, nodeID string, depth *int, relationshipTypes []string, labels []string, limit *int) (*models.Subgraph, error)
}
type RelationshipResolver ¶
type ResolverRoot ¶
type ResolverRoot interface {
CypherResult() CypherResultResolver
Mutation() MutationResolver
Node() NodeResolver
Query() QueryResolver
Relationship() RelationshipResolver
Subscription() SubscriptionResolver
}
type SubscriptionResolver ¶
type SubscriptionResolver interface {
NodeCreated(ctx context.Context, labels []string) (<-chan *models.Node, error)
NodeUpdated(ctx context.Context, id *string, labels []string) (<-chan *models.Node, error)
NodeDeleted(ctx context.Context, labels []string) (<-chan string, error)
RelationshipCreated(ctx context.Context, types []string) (<-chan *models.Relationship, error)
RelationshipUpdated(ctx context.Context, id *string, types []string) (<-chan *models.Relationship, error)
RelationshipDeleted(ctx context.Context, types []string) (<-chan string, error)
SearchStream(ctx context.Context, query string, options *models.SearchOptions) (<-chan *models.SearchResult, error)
}
Click to show internal directories.
Click to hide internal directories.