Documentation ¶
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type ExploreFieldsSpecBuilder ¶
type ExploreFieldsSpecBuilder interface {
Insert(k string, v SelectorSpec)
}
ExploreFieldsSpecBuilder is an interface for assemble the map of fields to selectors in ExploreFields
type ExploreFieldsSpecBuildingClosure ¶
type ExploreFieldsSpecBuildingClosure func(ExploreFieldsSpecBuilder)
ExploreFieldsSpecBuildingClosure is a function that provided to SelectorSpecBuilder's ExploreFields method that assembles the fields map in the selector using an ExploreFieldsSpecBuilder
type SelectorSpec ¶
SelectorSpec is a specification for a selector that can build a selector datamodel.Node or an actual parsed Selector
type SelectorSpecBuilder ¶
type SelectorSpecBuilder interface { ExploreRecursiveEdge() SelectorSpec ExploreRecursive(limit selector.RecursionLimit, sequence SelectorSpec) SelectorSpec ExploreUnion(...SelectorSpec) SelectorSpec ExploreAll(next SelectorSpec) SelectorSpec ExploreIndex(index int64, next SelectorSpec) SelectorSpec ExploreRange(start, end int64, next SelectorSpec) SelectorSpec ExploreFields(ExploreFieldsSpecBuildingClosure) SelectorSpec Matcher() SelectorSpec }
SelectorSpecBuilder is a utility interface to build selector ipld nodes quickly.
It serves two purposes: 1. Save the user of go-ipld time and mental overhead with an easy interface for making selector nodes in much less code without having to remember the selector sigils 2. Provide a level of protection from selector schema changes, at least in terms of naming, if not structure
func NewSelectorSpecBuilder ¶
func NewSelectorSpecBuilder(np datamodel.NodePrototype) SelectorSpecBuilder
NewSelectorSpecBuilder creates a SelectorSpecBuilder which will store data in the format determined by the given datamodel.NodePrototype.