Documentation
      ¶
    
    
  
    
  
    Index ¶
- type Argument
 - type Catalog
 - func (c *Catalog) Build(stmts []ast.Statement) error
 - func (c *Catalog) GetTable(rel *ast.TableName) (Table, error)
 - func (c *Catalog) ListFuncsByName(rel *ast.FuncName) ([]Function, error)
 - func (c *Catalog) ResolveFuncCall(call *ast.FuncCall) (*Function, error)
 - func (c *Catalog) Update(stmt ast.Statement, colGen columnGenerator) error
 
- type Column
 - type CompositeType
 - type Enum
 - type Function
 - type Schema
 - type Table
 - type Type
 
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type Catalog ¶
type Catalog struct {
	Comment       string
	DefaultSchema string
	Name          string
	Schemas       []*Schema
	SearchPath    []string
	LoadExtension func(string) *Schema
	// TODO: un-export
	Extensions map[string]struct{}
}
    Catalog describes a database instance consisting of metadata in which database objects are defined
func (*Catalog) ListFuncsByName ¶
func (*Catalog) ResolveFuncCall ¶
type Column ¶
type Column struct {
	Name       string
	Type       ast.TypeName
	IsNotNull  bool
	IsUnsigned bool
	IsArray    bool
	ArrayDims  int
	Comment    string
	Length     *int
	// contains filtered or unexported fields
}
    Column describes a set of data values of a particular type in a relational database table
TODO: Should this just be ast Nodes?
type CompositeType ¶
func (*CompositeType) SetComment ¶
func (ct *CompositeType) SetComment(c string)
type Enum ¶
func (*Enum) SetComment ¶
type Function ¶
type Function struct {
	Name               string
	Args               []*Argument
	ReturnType         *ast.TypeName
	Comment            string
	Desc               string
	ReturnTypeNullable bool
}
    Function describes a database function
A database function is a method written to perform a specific operation on data within the database.
type Schema ¶
Schema describes how the data in a relational database may relate to other tables or other data models
 Click to show internal directories. 
   Click to hide internal directories.