ent

package
v0.1.5-0...-40e571d Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Apr 13, 2020 License: Apache-2.0 Imports: 16 Imported by: 0

Documentation

Index

Constants

View Source
const (
	// Operation types.
	OpCreate    = ent.OpCreate
	OpDelete    = ent.OpDelete
	OpDeleteOne = ent.OpDeleteOne
	OpUpdate    = ent.OpUpdate
	OpUpdateOne = ent.OpUpdateOne

	// Node types.
	TypeNode = "Node"
)

Variables

This section is empty.

Functions

func IsConstraintError

func IsConstraintError(err error) bool

IsConstraintError returns a boolean indicating whether the error is a constraint failure.

func IsNotFound

func IsNotFound(err error) bool

IsNotFound returns a boolean indicating whether the error is a not found error.

func IsNotLoaded

func IsNotLoaded(err error) bool

IsNotLoaded returns a boolean indicating whether the error is a not loaded error.

func IsNotSingular

func IsNotSingular(err error) bool

IsNotSingular returns a boolean indicating whether the error is a not singular error.

func MaskNotFound

func MaskNotFound(err error) error

MaskNotFound masks nor found error.

func NewContext

func NewContext(parent context.Context, c *Client) context.Context

NewContext returns a new context with the given Client attached.

func NewTxContext

func NewTxContext(parent context.Context, tx *Tx) context.Context

NewTxContext returns a new context with the given Client attached.

Types

type Aggregate

type Aggregate func(*sql.Selector) string

Aggregate applies an aggregation step on the group-by traversal/selector.

func As

func As(fn Aggregate, end string) Aggregate

As is a pseudo aggregation function for renaming another other functions with custom names. For example:

GroupBy(field1, field2).
Aggregate(ent.As(ent.Sum(field1), "sum_field1"), (ent.As(ent.Sum(field2), "sum_field2")).
Scan(ctx, &v)

func Count

func Count() Aggregate

Count applies the "count" aggregation function on each group.

func Max

func Max(field string) Aggregate

Max applies the "max" aggregation function on the given field of each group.

func Mean

func Mean(field string) Aggregate

Mean applies the "mean" aggregation function on the given field of each group.

func Min

func Min(field string) Aggregate

Min applies the "min" aggregation function on the given field of each group.

func Sum

func Sum(field string) Aggregate

Sum applies the "sum" aggregation function on the given field of each group.

type Client

type Client struct {

	// Schema is the client for creating, migrating and dropping schema.
	Schema *migrate.Schema
	// Node is the client for interacting with the Node builders.
	Node *NodeClient
	// contains filtered or unexported fields
}

Client is the client that holds all ent builders.

func FromContext

func FromContext(ctx context.Context) *Client

FromContext returns the Client stored in a context, or nil if there isn't one.

func NewClient

func NewClient(opts ...Option) *Client

NewClient creates a new client configured with the given options.

func Open

func Open(driverName, dataSourceName string, options ...Option) (*Client, error)

Open opens a connection to the database specified by the driver name and a driver-specific data source name, and returns a new client attached to it. Optional parameters can be added for configuring the client.

func (*Client) Close

func (c *Client) Close() error

Close closes the database connection and prevents new queries from starting.

func (*Client) Debug

func (c *Client) Debug() *Client

Debug returns a new debug-client. It's used to get verbose logging on specific operations.

client.Debug().
	Node.
	Query().
	Count(ctx)

func (*Client) Tx

func (c *Client) Tx(ctx context.Context) (*Tx, error)

Tx returns a new transactional client.

func (*Client) Use

func (c *Client) Use(hooks ...Hook)

Use adds the mutation hooks to all the entity clients. In order to add hooks to a specific client, call: `client.Node.Use(...)`.

type ConstraintError

type ConstraintError struct {
	// contains filtered or unexported fields
}

ConstraintError returns when trying to create/update one or more entities and one or more of their constraints failed. For example, violation of edge or field uniqueness.

func (ConstraintError) Error

func (e ConstraintError) Error() string

Error implements the error interface.

func (*ConstraintError) Unwrap

func (e *ConstraintError) Unwrap() error

Unwrap implements the errors.Wrapper interface.

type Hook

type Hook = ent.Hook

ent aliases to avoid import conflict in user's code.

type MutateFunc

type MutateFunc = ent.MutateFunc

ent aliases to avoid import conflict in user's code.

type Mutation

type Mutation = ent.Mutation

ent aliases to avoid import conflict in user's code.

type Mutator

type Mutator = ent.Mutator

ent aliases to avoid import conflict in user's code.

type Node

type Node struct {

	// ID of the ent.
	ID int `json:"id,omitempty"`
	// Value holds the value of the "value" field.
	Value int `json:"value,omitempty"`
	// Edges holds the relations/edges for other nodes in the graph.
	// The values are being populated by the NodeQuery when eager-loading is set.
	Edges NodeEdges `json:"edges"`
	// contains filtered or unexported fields
}

Node is the model entity for the Node schema.

func (*Node) QueryChildren

func (n *Node) QueryChildren() *NodeQuery

QueryChildren queries the children edge of the Node.

func (*Node) QueryParent

func (n *Node) QueryParent() *NodeQuery

QueryParent queries the parent edge of the Node.

func (*Node) String

func (n *Node) String() string

String implements the fmt.Stringer.

func (*Node) Unwrap

func (n *Node) Unwrap() *Node

Unwrap unwraps the entity that was returned from a transaction after it was closed, so that all next queries will be executed through the driver which created the transaction.

func (*Node) Update

func (n *Node) Update() *NodeUpdateOne

Update returns a builder for updating this Node. Note that, you need to call Node.Unwrap() before calling this method, if this Node was returned from a transaction, and the transaction was committed or rolled back.

type NodeClient

type NodeClient struct {
	// contains filtered or unexported fields
}

NodeClient is a client for the Node schema.

func NewNodeClient

func NewNodeClient(c config) *NodeClient

NewNodeClient returns a client for the Node from the given config.

func (*NodeClient) Create

func (c *NodeClient) Create() *NodeCreate

Create returns a create builder for Node.

func (*NodeClient) Delete

func (c *NodeClient) Delete() *NodeDelete

Delete returns a delete builder for Node.

func (*NodeClient) DeleteOne

func (c *NodeClient) DeleteOne(n *Node) *NodeDeleteOne

DeleteOne returns a delete builder for the given entity.

func (*NodeClient) DeleteOneID

func (c *NodeClient) DeleteOneID(id int) *NodeDeleteOne

DeleteOneID returns a delete builder for the given id.

func (*NodeClient) Get

func (c *NodeClient) Get(ctx context.Context, id int) (*Node, error)

Get returns a Node entity by its id.

func (*NodeClient) GetX

func (c *NodeClient) GetX(ctx context.Context, id int) *Node

GetX is like Get, but panics if an error occurs.

func (*NodeClient) Hooks

func (c *NodeClient) Hooks() []Hook

Hooks returns the client hooks.

func (*NodeClient) Query

func (c *NodeClient) Query() *NodeQuery

Create returns a query builder for Node.

func (*NodeClient) QueryChildren

func (c *NodeClient) QueryChildren(n *Node) *NodeQuery

QueryChildren queries the children edge of a Node.

func (*NodeClient) QueryParent

func (c *NodeClient) QueryParent(n *Node) *NodeQuery

QueryParent queries the parent edge of a Node.

func (*NodeClient) Update

func (c *NodeClient) Update() *NodeUpdate

Update returns an update builder for Node.

func (*NodeClient) UpdateOne

func (c *NodeClient) UpdateOne(n *Node) *NodeUpdateOne

UpdateOne returns an update builder for the given entity.

func (*NodeClient) UpdateOneID

func (c *NodeClient) UpdateOneID(id int) *NodeUpdateOne

UpdateOneID returns an update builder for the given id.

func (*NodeClient) Use

func (c *NodeClient) Use(hooks ...Hook)

Use adds a list of mutation hooks to the hooks stack. A call to `Use(f, g, h)` equals to `node.Hooks(f(g(h())))`.

type NodeCreate

type NodeCreate struct {
	// contains filtered or unexported fields
}

NodeCreate is the builder for creating a Node entity.

func (*NodeCreate) AddChildIDs

func (nc *NodeCreate) AddChildIDs(ids ...int) *NodeCreate

AddChildIDs adds the children edge to Node by ids.

func (*NodeCreate) AddChildren

func (nc *NodeCreate) AddChildren(n ...*Node) *NodeCreate

AddChildren adds the children edges to Node.

func (*NodeCreate) Save

func (nc *NodeCreate) Save(ctx context.Context) (*Node, error)

Save creates the Node in the database.

func (*NodeCreate) SaveX

func (nc *NodeCreate) SaveX(ctx context.Context) *Node

SaveX calls Save and panics if Save returns an error.

func (*NodeCreate) SetNillableParentID

func (nc *NodeCreate) SetNillableParentID(id *int) *NodeCreate

SetNillableParentID sets the parent edge to Node by id if the given value is not nil.

func (*NodeCreate) SetParent

func (nc *NodeCreate) SetParent(n *Node) *NodeCreate

SetParent sets the parent edge to Node.

func (*NodeCreate) SetParentID

func (nc *NodeCreate) SetParentID(id int) *NodeCreate

SetParentID sets the parent edge to Node by id.

func (*NodeCreate) SetValue

func (nc *NodeCreate) SetValue(i int) *NodeCreate

SetValue sets the value field.

type NodeDelete

type NodeDelete struct {
	// contains filtered or unexported fields
}

NodeDelete is the builder for deleting a Node entity.

func (*NodeDelete) Exec

func (nd *NodeDelete) Exec(ctx context.Context) (int, error)

Exec executes the deletion query and returns how many vertices were deleted.

func (*NodeDelete) ExecX

func (nd *NodeDelete) ExecX(ctx context.Context) int

ExecX is like Exec, but panics if an error occurs.

func (*NodeDelete) Where

func (nd *NodeDelete) Where(ps ...predicate.Node) *NodeDelete

Where adds a new predicate to the delete builder.

type NodeDeleteOne

type NodeDeleteOne struct {
	// contains filtered or unexported fields
}

NodeDeleteOne is the builder for deleting a single Node entity.

func (*NodeDeleteOne) Exec

func (ndo *NodeDeleteOne) Exec(ctx context.Context) error

Exec executes the deletion query.

func (*NodeDeleteOne) ExecX

func (ndo *NodeDeleteOne) ExecX(ctx context.Context)

ExecX is like Exec, but panics if an error occurs.

type NodeEdges

type NodeEdges struct {
	// Parent holds the value of the parent edge.
	Parent *Node
	// Children holds the value of the children edge.
	Children []*Node
	// contains filtered or unexported fields
}

NodeEdges holds the relations/edges for other nodes in the graph.

func (NodeEdges) ChildrenOrErr

func (e NodeEdges) ChildrenOrErr() ([]*Node, error)

ChildrenOrErr returns the Children value or an error if the edge was not loaded in eager-loading.

func (NodeEdges) ParentOrErr

func (e NodeEdges) ParentOrErr() (*Node, error)

ParentOrErr returns the Parent value or an error if the edge was not loaded in eager-loading, or loaded but was not found.

type NodeGroupBy

type NodeGroupBy struct {
	// contains filtered or unexported fields
}

NodeGroupBy is the builder for group-by Node entities.

func (*NodeGroupBy) Aggregate

func (ngb *NodeGroupBy) Aggregate(fns ...Aggregate) *NodeGroupBy

Aggregate adds the given aggregation functions to the group-by query.

func (*NodeGroupBy) Bools

func (ngb *NodeGroupBy) Bools(ctx context.Context) ([]bool, error)

Bools returns list of bools from group-by. It is only allowed when querying group-by with one field.

func (*NodeGroupBy) BoolsX

func (ngb *NodeGroupBy) BoolsX(ctx context.Context) []bool

BoolsX is like Bools, but panics if an error occurs.

func (*NodeGroupBy) Float64s

func (ngb *NodeGroupBy) Float64s(ctx context.Context) ([]float64, error)

Float64s returns list of float64s from group-by. It is only allowed when querying group-by with one field.

func (*NodeGroupBy) Float64sX

func (ngb *NodeGroupBy) Float64sX(ctx context.Context) []float64

Float64sX is like Float64s, but panics if an error occurs.

func (*NodeGroupBy) Ints

func (ngb *NodeGroupBy) Ints(ctx context.Context) ([]int, error)

Ints returns list of ints from group-by. It is only allowed when querying group-by with one field.

func (*NodeGroupBy) IntsX

func (ngb *NodeGroupBy) IntsX(ctx context.Context) []int

IntsX is like Ints, but panics if an error occurs.

func (*NodeGroupBy) Scan

func (ngb *NodeGroupBy) Scan(ctx context.Context, v interface{}) error

Scan applies the group-by query and scan the result into the given value.

func (*NodeGroupBy) ScanX

func (ngb *NodeGroupBy) ScanX(ctx context.Context, v interface{})

ScanX is like Scan, but panics if an error occurs.

func (*NodeGroupBy) Strings

func (ngb *NodeGroupBy) Strings(ctx context.Context) ([]string, error)

Strings returns list of strings from group-by. It is only allowed when querying group-by with one field.

func (*NodeGroupBy) StringsX

func (ngb *NodeGroupBy) StringsX(ctx context.Context) []string

StringsX is like Strings, but panics if an error occurs.

type NodeMutation

type NodeMutation struct {
	// contains filtered or unexported fields
}

NodeMutation represents an operation that mutate the Nodes nodes in the graph.

func (*NodeMutation) AddChildIDs

func (m *NodeMutation) AddChildIDs(ids ...int)

AddChildIDs adds the children edge to Node by ids.

func (*NodeMutation) AddField

func (m *NodeMutation) AddField(name string, value ent.Value) error

AddField adds the value for the given name. It returns an error if the field is not defined in the schema, or if the type mismatch the field type.

func (*NodeMutation) AddValue

func (m *NodeMutation) AddValue(i int)

AddValue adds i to value.

func (*NodeMutation) AddedEdges

func (m *NodeMutation) AddedEdges() []string

AddedEdges returns all edge names that were set/added in this mutation.

func (*NodeMutation) AddedField

func (m *NodeMutation) AddedField(name string) (ent.Value, bool)

AddedField returns the numeric value that was in/decremented from a field with the given name. The second value indicates that this field was not set, or was not define in the schema.

func (*NodeMutation) AddedFields

func (m *NodeMutation) AddedFields() []string

AddedFields returns all numeric fields that were incremented or decremented during this mutation.

func (*NodeMutation) AddedIDs

func (m *NodeMutation) AddedIDs(name string) []ent.Value

AddedIDs returns all ids (to other nodes) that were added for the given edge name.

func (*NodeMutation) AddedValue

func (m *NodeMutation) AddedValue() (r int, exists bool)

AddedValue returns the value that was added to the value field in this mutation.

func (*NodeMutation) ChildrenIDs

func (m *NodeMutation) ChildrenIDs() (ids []int)

ChildrenIDs returns the children ids in the mutation.

func (*NodeMutation) ClearEdge

func (m *NodeMutation) ClearEdge(name string) error

ClearEdge clears the value for the given name. It returns an error if the edge name is not defined in the schema.

func (*NodeMutation) ClearField

func (m *NodeMutation) ClearField(name string) error

ClearField clears the value for the given name. It returns an error if the field is not defined in the schema.

func (*NodeMutation) ClearParent

func (m *NodeMutation) ClearParent()

ClearParent clears the parent edge to Node.

func (*NodeMutation) ClearedEdges

func (m *NodeMutation) ClearedEdges() []string

ClearedEdges returns all edge names that were cleared in this mutation.

func (*NodeMutation) ClearedFields

func (m *NodeMutation) ClearedFields() []string

ClearedFields returns all nullable fields that were cleared during this mutation.

func (NodeMutation) Client

func (m NodeMutation) Client() *Client

Client returns a new `ent.Client` from the mutation. If the mutation was executed in a transaction (ent.Tx), a transactional client is returned.

func (*NodeMutation) EdgeCleared

func (m *NodeMutation) EdgeCleared(name string) bool

EdgeCleared returns a boolean indicates if this edge was cleared in this mutation.

func (*NodeMutation) Field

func (m *NodeMutation) Field(name string) (ent.Value, bool)

Field returns the value of a field with the given name. The second boolean value indicates that this field was not set, or was not define in the schema.

func (*NodeMutation) FieldCleared

func (m *NodeMutation) FieldCleared(name string) bool

FieldCleared returns a boolean indicates if this field was cleared in this mutation.

func (*NodeMutation) Fields

func (m *NodeMutation) Fields() []string

Fields returns all fields that were changed during this mutation. Note that, in order to get all numeric fields that were in/decremented, call AddedFields().

func (*NodeMutation) ID

func (m *NodeMutation) ID() (id int, exists bool)

ID returns the id value in the mutation. Note that, the id is available only if it was provided to the builder.

func (*NodeMutation) Op

func (m *NodeMutation) Op() Op

Op returns the operation name.

func (*NodeMutation) ParentCleared

func (m *NodeMutation) ParentCleared() bool

ParentCleared returns if the edge parent was cleared.

func (*NodeMutation) ParentID

func (m *NodeMutation) ParentID() (id int, exists bool)

ParentID returns the parent id in the mutation.

func (*NodeMutation) ParentIDs

func (m *NodeMutation) ParentIDs() (ids []int)

ParentIDs returns the parent ids in the mutation. Note that ids always returns len(ids) <= 1 for unique edges, and you should use ParentID instead. It exists only for internal usage by the builders.

func (*NodeMutation) RemoveChildIDs

func (m *NodeMutation) RemoveChildIDs(ids ...int)

RemoveChildIDs removes the children edge to Node by ids.

func (*NodeMutation) RemovedChildrenIDs

func (m *NodeMutation) RemovedChildrenIDs() (ids []int)

RemovedChildren returns the removed ids of children.

func (*NodeMutation) RemovedEdges

func (m *NodeMutation) RemovedEdges() []string

RemovedEdges returns all edge names that were removed in this mutation.

func (*NodeMutation) RemovedIDs

func (m *NodeMutation) RemovedIDs(name string) []ent.Value

RemovedIDs returns all ids (to other nodes) that were removed for the given edge name.

func (*NodeMutation) ResetChildren

func (m *NodeMutation) ResetChildren()

ResetChildren reset all changes of the children edge.

func (*NodeMutation) ResetEdge

func (m *NodeMutation) ResetEdge(name string) error

ResetEdge resets all changes in the mutation regarding the given edge name. It returns an error if the edge is not defined in the schema.

func (*NodeMutation) ResetField

func (m *NodeMutation) ResetField(name string) error

ResetField resets all changes in the mutation regarding the given field name. It returns an error if the field is not defined in the schema.

func (*NodeMutation) ResetParent

func (m *NodeMutation) ResetParent()

ResetParent reset all changes of the parent edge.

func (*NodeMutation) ResetValue

func (m *NodeMutation) ResetValue()

ResetValue reset all changes of the value field.

func (*NodeMutation) SetField

func (m *NodeMutation) SetField(name string, value ent.Value) error

SetField sets the value for the given name. It returns an error if the field is not defined in the schema, or if the type mismatch the field type.

func (*NodeMutation) SetParentID

func (m *NodeMutation) SetParentID(id int)

SetParentID sets the parent edge to Node by id.

func (*NodeMutation) SetValue

func (m *NodeMutation) SetValue(i int)

SetValue sets the value field.

func (NodeMutation) Tx

func (m NodeMutation) Tx() (*Tx, error)

Tx returns an `ent.Tx` for mutations that were executed in transactions; it returns an error otherwise.

func (*NodeMutation) Type

func (m *NodeMutation) Type() string

Type returns the node type of this mutation (Node).

func (*NodeMutation) Value

func (m *NodeMutation) Value() (r int, exists bool)

Value returns the value value in the mutation.

type NodeQuery

type NodeQuery struct {
	// contains filtered or unexported fields
}

NodeQuery is the builder for querying Node entities.

func (*NodeQuery) All

func (nq *NodeQuery) All(ctx context.Context) ([]*Node, error)

All executes the query and returns a list of Nodes.

func (*NodeQuery) AllX

func (nq *NodeQuery) AllX(ctx context.Context) []*Node

AllX is like All, but panics if an error occurs.

func (*NodeQuery) Clone

func (nq *NodeQuery) Clone() *NodeQuery

Clone returns a duplicate of the query builder, including all associated steps. It can be used to prepare common query builders and use them differently after the clone is made.

func (*NodeQuery) Count

func (nq *NodeQuery) Count(ctx context.Context) (int, error)

Count returns the count of the given query.

func (*NodeQuery) CountX

func (nq *NodeQuery) CountX(ctx context.Context) int

CountX is like Count, but panics if an error occurs.

func (*NodeQuery) Exist

func (nq *NodeQuery) Exist(ctx context.Context) (bool, error)

Exist returns true if the query has elements in the graph.

func (*NodeQuery) ExistX

func (nq *NodeQuery) ExistX(ctx context.Context) bool

ExistX is like Exist, but panics if an error occurs.

func (*NodeQuery) First

func (nq *NodeQuery) First(ctx context.Context) (*Node, error)

First returns the first Node entity in the query. Returns *NotFoundError when no node was found.

func (*NodeQuery) FirstID

func (nq *NodeQuery) FirstID(ctx context.Context) (id int, err error)

FirstID returns the first Node id in the query. Returns *NotFoundError when no id was found.

func (*NodeQuery) FirstX

func (nq *NodeQuery) FirstX(ctx context.Context) *Node

FirstX is like First, but panics if an error occurs.

func (*NodeQuery) FirstXID

func (nq *NodeQuery) FirstXID(ctx context.Context) int

FirstXID is like FirstID, but panics if an error occurs.

func (*NodeQuery) GroupBy

func (nq *NodeQuery) GroupBy(field string, fields ...string) *NodeGroupBy

GroupBy used to group vertices by one or more fields/columns. It is often used with aggregate functions, like: count, max, mean, min, sum.

Example:

var v []struct {
	Value int `json:"value,omitempty"`
	Count int `json:"count,omitempty"`
}

client.Node.Query().
	GroupBy(node.FieldValue).
	Aggregate(ent.Count()).
	Scan(ctx, &v)

func (*NodeQuery) IDs

func (nq *NodeQuery) IDs(ctx context.Context) ([]int, error)

IDs executes the query and returns a list of Node ids.

func (*NodeQuery) IDsX

func (nq *NodeQuery) IDsX(ctx context.Context) []int

IDsX is like IDs, but panics if an error occurs.

func (*NodeQuery) Limit

func (nq *NodeQuery) Limit(limit int) *NodeQuery

Limit adds a limit step to the query.

func (*NodeQuery) Offset

func (nq *NodeQuery) Offset(offset int) *NodeQuery

Offset adds an offset step to the query.

func (*NodeQuery) Only

func (nq *NodeQuery) Only(ctx context.Context) (*Node, error)

Only returns the only Node entity in the query, returns an error if not exactly one entity was returned.

func (*NodeQuery) OnlyID

func (nq *NodeQuery) OnlyID(ctx context.Context) (id int, err error)

OnlyID returns the only Node id in the query, returns an error if not exactly one id was returned.

func (*NodeQuery) OnlyX

func (nq *NodeQuery) OnlyX(ctx context.Context) *Node

OnlyX is like Only, but panics if an error occurs.

func (*NodeQuery) OnlyXID

func (nq *NodeQuery) OnlyXID(ctx context.Context) int

OnlyXID is like OnlyID, but panics if an error occurs.

func (*NodeQuery) Order

func (nq *NodeQuery) Order(o ...Order) *NodeQuery

Order adds an order step to the query.

func (*NodeQuery) QueryChildren

func (nq *NodeQuery) QueryChildren() *NodeQuery

QueryChildren chains the current query on the children edge.

func (*NodeQuery) QueryParent

func (nq *NodeQuery) QueryParent() *NodeQuery

QueryParent chains the current query on the parent edge.

func (*NodeQuery) Select

func (nq *NodeQuery) Select(field string, fields ...string) *NodeSelect

Select one or more fields from the given query.

Example:

var v []struct {
	Value int `json:"value,omitempty"`
}

client.Node.Query().
	Select(node.FieldValue).
	Scan(ctx, &v)

func (*NodeQuery) Where

func (nq *NodeQuery) Where(ps ...predicate.Node) *NodeQuery

Where adds a new predicate for the builder.

func (*NodeQuery) WithChildren

func (nq *NodeQuery) WithChildren(opts ...func(*NodeQuery)) *NodeQuery
WithChildren tells the query-builder to eager-loads the nodes that are connected to

the "children" edge. The optional arguments used to configure the query builder of the edge.

func (*NodeQuery) WithParent

func (nq *NodeQuery) WithParent(opts ...func(*NodeQuery)) *NodeQuery
WithParent tells the query-builder to eager-loads the nodes that are connected to

the "parent" edge. The optional arguments used to configure the query builder of the edge.

type NodeSelect

type NodeSelect struct {
	// contains filtered or unexported fields
}

NodeSelect is the builder for select fields of Node entities.

func (*NodeSelect) Bools

func (ns *NodeSelect) Bools(ctx context.Context) ([]bool, error)

Bools returns list of bools from selector. It is only allowed when selecting one field.

func (*NodeSelect) BoolsX

func (ns *NodeSelect) BoolsX(ctx context.Context) []bool

BoolsX is like Bools, but panics if an error occurs.

func (*NodeSelect) Float64s

func (ns *NodeSelect) Float64s(ctx context.Context) ([]float64, error)

Float64s returns list of float64s from selector. It is only allowed when selecting one field.

func (*NodeSelect) Float64sX

func (ns *NodeSelect) Float64sX(ctx context.Context) []float64

Float64sX is like Float64s, but panics if an error occurs.

func (*NodeSelect) Ints

func (ns *NodeSelect) Ints(ctx context.Context) ([]int, error)

Ints returns list of ints from selector. It is only allowed when selecting one field.

func (*NodeSelect) IntsX

func (ns *NodeSelect) IntsX(ctx context.Context) []int

IntsX is like Ints, but panics if an error occurs.

func (*NodeSelect) Scan

func (ns *NodeSelect) Scan(ctx context.Context, v interface{}) error

Scan applies the selector query and scan the result into the given value.

func (*NodeSelect) ScanX

func (ns *NodeSelect) ScanX(ctx context.Context, v interface{})

ScanX is like Scan, but panics if an error occurs.

func (*NodeSelect) Strings

func (ns *NodeSelect) Strings(ctx context.Context) ([]string, error)

Strings returns list of strings from selector. It is only allowed when selecting one field.

func (*NodeSelect) StringsX

func (ns *NodeSelect) StringsX(ctx context.Context) []string

StringsX is like Strings, but panics if an error occurs.

type NodeUpdate

type NodeUpdate struct {
	// contains filtered or unexported fields
}

NodeUpdate is the builder for updating Node entities.

func (*NodeUpdate) AddChildIDs

func (nu *NodeUpdate) AddChildIDs(ids ...int) *NodeUpdate

AddChildIDs adds the children edge to Node by ids.

func (*NodeUpdate) AddChildren

func (nu *NodeUpdate) AddChildren(n ...*Node) *NodeUpdate

AddChildren adds the children edges to Node.

func (*NodeUpdate) AddValue

func (nu *NodeUpdate) AddValue(i int) *NodeUpdate

AddValue adds i to value.

func (*NodeUpdate) ClearParent

func (nu *NodeUpdate) ClearParent() *NodeUpdate

ClearParent clears the parent edge to Node.

func (*NodeUpdate) Exec

func (nu *NodeUpdate) Exec(ctx context.Context) error

Exec executes the query.

func (*NodeUpdate) ExecX

func (nu *NodeUpdate) ExecX(ctx context.Context)

ExecX is like Exec, but panics if an error occurs.

func (*NodeUpdate) RemoveChildIDs

func (nu *NodeUpdate) RemoveChildIDs(ids ...int) *NodeUpdate

RemoveChildIDs removes the children edge to Node by ids.

func (*NodeUpdate) RemoveChildren

func (nu *NodeUpdate) RemoveChildren(n ...*Node) *NodeUpdate

RemoveChildren removes children edges to Node.

func (*NodeUpdate) Save

func (nu *NodeUpdate) Save(ctx context.Context) (int, error)

Save executes the query and returns the number of rows/vertices matched by this operation.

func (*NodeUpdate) SaveX

func (nu *NodeUpdate) SaveX(ctx context.Context) int

SaveX is like Save, but panics if an error occurs.

func (*NodeUpdate) SetNillableParentID

func (nu *NodeUpdate) SetNillableParentID(id *int) *NodeUpdate

SetNillableParentID sets the parent edge to Node by id if the given value is not nil.

func (*NodeUpdate) SetParent

func (nu *NodeUpdate) SetParent(n *Node) *NodeUpdate

SetParent sets the parent edge to Node.

func (*NodeUpdate) SetParentID

func (nu *NodeUpdate) SetParentID(id int) *NodeUpdate

SetParentID sets the parent edge to Node by id.

func (*NodeUpdate) SetValue

func (nu *NodeUpdate) SetValue(i int) *NodeUpdate

SetValue sets the value field.

func (*NodeUpdate) Where

func (nu *NodeUpdate) Where(ps ...predicate.Node) *NodeUpdate

Where adds a new predicate for the builder.

type NodeUpdateOne

type NodeUpdateOne struct {
	// contains filtered or unexported fields
}

NodeUpdateOne is the builder for updating a single Node entity.

func (*NodeUpdateOne) AddChildIDs

func (nuo *NodeUpdateOne) AddChildIDs(ids ...int) *NodeUpdateOne

AddChildIDs adds the children edge to Node by ids.

func (*NodeUpdateOne) AddChildren

func (nuo *NodeUpdateOne) AddChildren(n ...*Node) *NodeUpdateOne

AddChildren adds the children edges to Node.

func (*NodeUpdateOne) AddValue

func (nuo *NodeUpdateOne) AddValue(i int) *NodeUpdateOne

AddValue adds i to value.

func (*NodeUpdateOne) ClearParent

func (nuo *NodeUpdateOne) ClearParent() *NodeUpdateOne

ClearParent clears the parent edge to Node.

func (*NodeUpdateOne) Exec

func (nuo *NodeUpdateOne) Exec(ctx context.Context) error

Exec executes the query on the entity.

func (*NodeUpdateOne) ExecX

func (nuo *NodeUpdateOne) ExecX(ctx context.Context)

ExecX is like Exec, but panics if an error occurs.

func (*NodeUpdateOne) RemoveChildIDs

func (nuo *NodeUpdateOne) RemoveChildIDs(ids ...int) *NodeUpdateOne

RemoveChildIDs removes the children edge to Node by ids.

func (*NodeUpdateOne) RemoveChildren

func (nuo *NodeUpdateOne) RemoveChildren(n ...*Node) *NodeUpdateOne

RemoveChildren removes children edges to Node.

func (*NodeUpdateOne) Save

func (nuo *NodeUpdateOne) Save(ctx context.Context) (*Node, error)

Save executes the query and returns the updated entity.

func (*NodeUpdateOne) SaveX

func (nuo *NodeUpdateOne) SaveX(ctx context.Context) *Node

SaveX is like Save, but panics if an error occurs.

func (*NodeUpdateOne) SetNillableParentID

func (nuo *NodeUpdateOne) SetNillableParentID(id *int) *NodeUpdateOne

SetNillableParentID sets the parent edge to Node by id if the given value is not nil.

func (*NodeUpdateOne) SetParent

func (nuo *NodeUpdateOne) SetParent(n *Node) *NodeUpdateOne

SetParent sets the parent edge to Node.

func (*NodeUpdateOne) SetParentID

func (nuo *NodeUpdateOne) SetParentID(id int) *NodeUpdateOne

SetParentID sets the parent edge to Node by id.

func (*NodeUpdateOne) SetValue

func (nuo *NodeUpdateOne) SetValue(i int) *NodeUpdateOne

SetValue sets the value field.

type Nodes

type Nodes []*Node

Nodes is a parsable slice of Node.

type NotFoundError

type NotFoundError struct {
	// contains filtered or unexported fields
}

NotFoundError returns when trying to fetch a specific entity and it was not found in the database.

func (*NotFoundError) Error

func (e *NotFoundError) Error() string

Error implements the error interface.

type NotLoadedError

type NotLoadedError struct {
	// contains filtered or unexported fields
}

NotLoadedError returns when trying to get a node that was not loaded by the query.

func (*NotLoadedError) Error

func (e *NotLoadedError) Error() string

Error implements the error interface.

type NotSingularError

type NotSingularError struct {
	// contains filtered or unexported fields
}

NotSingularError returns when trying to fetch a singular entity and more then one was found in the database.

func (*NotSingularError) Error

func (e *NotSingularError) Error() string

Error implements the error interface.

type Op

type Op = ent.Op

ent aliases to avoid import conflict in user's code.

type Option

type Option func(*config)

Option function to configure the client.

func Debug

func Debug() Option

Debug enables debug logging on the ent.Driver.

func Driver

func Driver(driver dialect.Driver) Option

Driver configures the client driver.

func Log

func Log(fn func(...interface{})) Option

Log sets the logging function for debug mode.

type Order

type Order func(*sql.Selector)

Order applies an ordering on either graph traversal or sql selector.

func Asc

func Asc(fields ...string) Order

Asc applies the given fields in ASC order.

func Desc

func Desc(fields ...string) Order

Desc applies the given fields in DESC order.

type Policy

type Policy = ent.Policy

ent aliases to avoid import conflict in user's code.

type Query

type Query = ent.Query

ent aliases to avoid import conflict in user's code.

type Tx

type Tx struct {

	// Node is the client for interacting with the Node builders.
	Node *NodeClient
	// contains filtered or unexported fields
}

Tx is a transactional client that is created by calling Client.Tx().

func TxFromContext

func TxFromContext(ctx context.Context) *Tx

TxFromContext returns the Tx stored in a context, or nil if there isn't one.

func (*Tx) Client

func (tx *Tx) Client() *Client

Client returns a Client that binds to current transaction.

func (*Tx) Commit

func (tx *Tx) Commit() error

Commit commits the transaction.

func (*Tx) OnCommit

func (tx *Tx) OnCommit(f func(error))

OnCommit adds a function to call on commit.

func (*Tx) OnRollback

func (tx *Tx) OnRollback(f func(error))

OnRollback adds a function to call on rollback.

func (*Tx) Rollback

func (tx *Tx) Rollback() error

Rollback rollbacks the transaction.

type Value

type Value = ent.Value

ent aliases to avoid import conflict in user's code.

Directories

Path Synopsis

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL