types

package
v0.13.0 Latest Latest
Warning

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

Go to latest
Published: Feb 7, 2019 License: BSD-2-Clause Imports: 10 Imported by: 3

Documentation

Index

Constants

View Source
const (
	Invalid    = Kind(types.Invalid)
	Bool       = Kind(types.Bool)
	Int        = Kind(types.Int)
	Int8       = Kind(types.Int8)
	Int16      = Kind(types.Int16)
	Int32      = Kind(types.Int32)
	Int64      = Kind(types.Int64)
	Uint       = Kind(types.Uint)
	Uint8      = Kind(types.Uint8)
	Uint16     = Kind(types.Uint16)
	Uint32     = Kind(types.Uint32)
	Uint64     = Kind(types.Uint64)
	Float32    = Kind(types.Float32)
	Float64    = Kind(types.Float64)
	Complex64  = Kind(types.Complex64)
	Complex128 = Kind(types.Complex128)
	String     = Kind(types.String)

	Interface = 101
	Map       = 102
	Slice     = 103
	Struct    = 104
)
View Source
const TagKey = "sql"

Variables

This section is empty.

Functions

This section is empty.

Types

type Kind

type Kind types.BasicKind

func (Kind) IsFloat

func (k Kind) IsFloat() bool

func (Kind) IsInteger

func (k Kind) IsInteger() bool

func (Kind) IsShort

func (k Kind) IsShort() bool

func (Kind) IsSimpleType

func (k Kind) IsSimpleType() bool

func (Kind) Token

func (k Kind) Token() string

type Tag

type Tag struct {
	Name       string `json:",omitempty" yaml:"name"`     // explicit column name
	Type       string `json:",omitempty" yaml:"type"`     // explicit column type (SQL syntax)
	Default    string `json:",omitempty" yaml:"default"`  // default SQL value
	Prefixed   bool   `json:",omitempty" yaml:"prefixed"` // use struct nesting to name the column
	Primary    bool   `json:",omitempty" yaml:"pk"`       // is a primary key
	Natural    bool   `json:",omitempty" yaml:"nk"`       // is a natural key so a unique index will be added automatically
	Auto       bool   `json:",omitempty" yaml:"auto"`     // is auto-incremented
	Index      string `json:",omitempty" yaml:"index"`    // the name of an index
	Unique     string `json:",omitempty" yaml:"unique"`   // the name of a unique index
	ForeignKey string `json:",omitempty" yaml:"fk"`       // relationship to another table
	OnUpdate   string `json:",omitempty" yaml:"onupdate"` // what to do on update (no action, cascade, delete, restrict, set null, set default)
	OnDelete   string `json:",omitempty" yaml:"ondelete"` // what to do on delete
	Size       int    `json:",omitempty" yaml:"size"`     // storage size
	Encode     string `json:",omitempty" yaml:"encode"`   // used for struct types: one of json | text | driver
	Skip       bool   `json:",omitempty" yaml:"skip"`     // ignore the field

}

Tag stores the parsed data from the tag string in a struct field. These are all optional.

func ParseTag

func ParseTag(raw string) (*Tag, error)

ParseTag parses a tag string from the struct field and unmarshals into a Tag struct.

func (*Tag) ParentReference added in v0.13.0

func (tag *Tag) ParentReference() (string, string)

func (*Tag) Validate added in v0.13.0

func (tag *Tag) Validate() error

type Tags

type Tags map[string]*Tag

func ReadTagsFile

func ReadTagsFile(file string) (Tags, error)

func (Tags) String

func (tags Tags) String() string

Jump to

Keyboard shortcuts

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