Documentation
¶
Index ¶
- type Instance
- func (e *Instance) Child(nth int) opt.Expr
- func (e *Instance) ChildCount() int
- func (e *Instance) Cost() memo.Cost
- func (e *Instance) FirstExpr() memo.RelExpr
- func (e *Instance) Memo() *memo.Memo
- func (e *Instance) NextExpr() memo.RelExpr
- func (e *Instance) Op() opt.Operator
- func (e *Instance) Private() interface{}
- func (e *Instance) ProvidedPhysical() *physical.Provided
- func (e *Instance) Relational() *props.Relational
- func (e *Instance) RequiredPhysical() *physical.Required
- func (e *Instance) SetChild(nth int, child opt.Expr)
- func (e *Instance) String() string
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type Instance ¶
type Instance struct {
Rel *props.Relational
Required *physical.Required
Provided *physical.Provided
Priv interface{}
// We embed a RelExpr to provide implementation for the unexported methods of
// RelExpr. This should not be initialized (resulting in a panic if any of
// those methods are called).
memo.RelExpr
}
Instance is a dummy RelExpr that contains various properties that can be extracted via that interface. It can be initialized with whatever subset of fields are required for the particular test; for example:
e := &testexpr.Instance{
Rel: &props.Relational{...},
Provided: &physical.Provided{...},
}
func (*Instance) ChildCount ¶
ChildCount is part of the RelExpr interface.
func (*Instance) Private ¶
func (e *Instance) Private() interface{}
Private is part of the RelExpr interface.
func (*Instance) ProvidedPhysical ¶
ProvidedPhysical is part of the RelExpr interface.
func (*Instance) Relational ¶
func (e *Instance) Relational() *props.Relational
Relational is part of the RelExpr interface.
func (*Instance) RequiredPhysical ¶
RequiredPhysical is part of the RelExpr interface.
Click to show internal directories.
Click to hide internal directories.