// Code generated by BobGen psql v0.42.5. DO NOT EDIT.
// This file is meant to be re-generated in place and/or deleted at any time.

package dbinfo

import "github.com/aarondl/opt/null"

var FieldseekerLinelocations = Table[
	fieldseekerLinelocationColumns,
	fieldseekerLinelocationIndexes,
	fieldseekerLinelocationForeignKeys,
	fieldseekerLinelocationUniques,
	fieldseekerLinelocationChecks,
]{
	Schema: "fieldseeker",
	Name:   "linelocation",
	Columns: fieldseekerLinelocationColumns{
		Objectid: column{
			Name:      "objectid",
			DBType:    "bigint",
			Default:   "",
			Comment:   "",
			Nullable:  false,
			Generated: false,
			AutoIncr:  false,
		},
		Name: column{
			Name:      "name",
			DBType:    "character varying",
			Default:   "NULL",
			Comment:   "Original attribute from ArcGIS API is NAME",
			Nullable:  true,
			Generated: false,
			AutoIncr:  false,
		},
		Zone: column{
			Name:      "zone",
			DBType:    "character varying",
			Default:   "NULL",
			Comment:   "Original attribute from ArcGIS API is ZONE",
			Nullable:  true,
			Generated: false,
			AutoIncr:  false,
		},
		Habitat: column{
			Name:      "habitat",
			DBType:    "character varying",
			Default:   "NULL",
			Comment:   "Original attribute from ArcGIS API is HABITAT",
			Nullable:  true,
			Generated: false,
			AutoIncr:  false,
		},
		Priority: column{
			Name:      "priority",
			DBType:    "character varying",
			Default:   "NULL",
			Comment:   "Original attribute from ArcGIS API is PRIORITY",
			Nullable:  true,
			Generated: false,
			AutoIncr:  false,
		},
		Usetype: column{
			Name:      "usetype",
			DBType:    "character varying",
			Default:   "NULL",
			Comment:   "Original attribute from ArcGIS API is USETYPE",
			Nullable:  true,
			Generated: false,
			AutoIncr:  false,
		},
		Active: column{
			Name:      "active",
			DBType:    "smallint",
			Default:   "NULL",
			Comment:   "Original attribute from ArcGIS API is ACTIVE",
			Nullable:  true,
			Generated: false,
			AutoIncr:  false,
		},
		Description: column{
			Name:      "description",
			DBType:    "character varying",
			Default:   "NULL",
			Comment:   "Original attribute from ArcGIS API is DESCRIPTION",
			Nullable:  true,
			Generated: false,
			AutoIncr:  false,
		},
		Accessdesc: column{
			Name:      "accessdesc",
			DBType:    "character varying",
			Default:   "NULL",
			Comment:   "Original attribute from ArcGIS API is ACCESSDESC",
			Nullable:  true,
			Generated: false,
			AutoIncr:  false,
		},
		Comments: column{
			Name:      "comments",
			DBType:    "character varying",
			Default:   "NULL",
			Comment:   "Original attribute from ArcGIS API is COMMENTS",
			Nullable:  true,
			Generated: false,
			AutoIncr:  false,
		},
		Symbology: column{
			Name:      "symbology",
			DBType:    "character varying",
			Default:   "NULL",
			Comment:   "Original attribute from ArcGIS API is SYMBOLOGY",
			Nullable:  true,
			Generated: false,
			AutoIncr:  false,
		},
		Externalid: column{
			Name:      "externalid",
			DBType:    "character varying",
			Default:   "NULL",
			Comment:   "Original attribute from ArcGIS API is EXTERNALID",
			Nullable:  true,
			Generated: false,
			AutoIncr:  false,
		},
		Acres: column{
			Name:      "acres",
			DBType:    "double precision",
			Default:   "NULL",
			Comment:   "Original attribute from ArcGIS API is ACRES",
			Nullable:  true,
			Generated: false,
			AutoIncr:  false,
		},
		Nextactiondatescheduled: column{
			Name:      "nextactiondatescheduled",
			DBType:    "timestamp without time zone",
			Default:   "NULL",
			Comment:   "Original attribute from ArcGIS API is NEXTACTIONDATESCHEDULED",
			Nullable:  true,
			Generated: false,
			AutoIncr:  false,
		},
		Larvinspectinterval: column{
			Name:      "larvinspectinterval",
			DBType:    "smallint",
			Default:   "NULL",
			Comment:   "Original attribute from ArcGIS API is LARVINSPECTINTERVAL",
			Nullable:  true,
			Generated: false,
			AutoIncr:  false,
		},
		LengthFT: column{
			Name:      "length_ft",
			DBType:    "double precision",
			Default:   "NULL",
			Comment:   "Original attribute from ArcGIS API is LENGTH_FT",
			Nullable:  true,
			Generated: false,
			AutoIncr:  false,
		},
		WidthFT: column{
			Name:      "width_ft",
			DBType:    "double precision",
			Default:   "NULL",
			Comment:   "Original attribute from ArcGIS API is WIDTH_FT",
			Nullable:  true,
			Generated: false,
			AutoIncr:  false,
		},
		Zone2: column{
			Name:      "zone2",
			DBType:    "character varying",
			Default:   "NULL",
			Comment:   "Original attribute from ArcGIS API is ZONE2",
			Nullable:  true,
			Generated: false,
			AutoIncr:  false,
		},
		Locationnumber: column{
			Name:      "locationnumber",
			DBType:    "integer",
			Default:   "NULL",
			Comment:   "Original attribute from ArcGIS API is LOCATIONNUMBER",
			Nullable:  true,
			Generated: false,
			AutoIncr:  false,
		},
		Globalid: column{
			Name:      "globalid",
			DBType:    "uuid",
			Default:   "",
			Comment:   "Original attribute from ArcGIS API is GlobalID",
			Nullable:  false,
			Generated: false,
			AutoIncr:  false,
		},
		CreatedUser: column{
			Name:      "created_user",
			DBType:    "character varying",
			Default:   "NULL",
			Comment:   "Original attribute from ArcGIS API is created_user",
			Nullable:  true,
			Generated: false,
			AutoIncr:  false,
		},
		CreatedDate: column{
			Name:      "created_date",
			DBType:    "timestamp without time zone",
			Default:   "NULL",
			Comment:   "Original attribute from ArcGIS API is created_date",
			Nullable:  true,
			Generated: false,
			AutoIncr:  false,
		},
		LastEditedUser: column{
			Name:      "last_edited_user",
			DBType:    "character varying",
			Default:   "NULL",
			Comment:   "Original attribute from ArcGIS API is last_edited_user",
			Nullable:  true,
			Generated: false,
			AutoIncr:  false,
		},
		LastEditedDate: column{
			Name:      "last_edited_date",
			DBType:    "timestamp without time zone",
			Default:   "NULL",
			Comment:   "Original attribute from ArcGIS API is last_edited_date",
			Nullable:  true,
			Generated: false,
			AutoIncr:  false,
		},
		Lastinspectdate: column{
			Name:      "lastinspectdate",
			DBType:    "timestamp without time zone",
			Default:   "NULL",
			Comment:   "Original attribute from ArcGIS API is LASTINSPECTDATE",
			Nullable:  true,
			Generated: false,
			AutoIncr:  false,
		},
		Lastinspectbreeding: column{
			Name:      "lastinspectbreeding",
			DBType:    "character varying",
			Default:   "NULL",
			Comment:   "Original attribute from ArcGIS API is LASTINSPECTBREEDING",
			Nullable:  true,
			Generated: false,
			AutoIncr:  false,
		},
		Lastinspectavglarvae: column{
			Name:      "lastinspectavglarvae",
			DBType:    "double precision",
			Default:   "NULL",
			Comment:   "Original attribute from ArcGIS API is LASTINSPECTAVGLARVAE",
			Nullable:  true,
			Generated: false,
			AutoIncr:  false,
		},
		Lastinspectavgpupae: column{
			Name:      "lastinspectavgpupae",
			DBType:    "double precision",
			Default:   "NULL",
			Comment:   "Original attribute from ArcGIS API is LASTINSPECTAVGPUPAE",
			Nullable:  true,
			Generated: false,
			AutoIncr:  false,
		},
		Lastinspectlstages: column{
			Name:      "lastinspectlstages",
			DBType:    "character varying",
			Default:   "NULL",
			Comment:   "Original attribute from ArcGIS API is LASTINSPECTLSTAGES",
			Nullable:  true,
			Generated: false,
			AutoIncr:  false,
		},
		Lastinspectactiontaken: column{
			Name:      "lastinspectactiontaken",
			DBType:    "character varying",
			Default:   "NULL",
			Comment:   "Original attribute from ArcGIS API is LASTINSPECTACTIONTAKEN",
			Nullable:  true,
			Generated: false,
			AutoIncr:  false,
		},
		Lastinspectfieldspecies: column{
			Name:      "lastinspectfieldspecies",
			DBType:    "character varying",
			Default:   "NULL",
			Comment:   "Original attribute from ArcGIS API is LASTINSPECTFIELDSPECIES",
			Nullable:  true,
			Generated: false,
			AutoIncr:  false,
		},
		Lasttreatdate: column{
			Name:      "lasttreatdate",
			DBType:    "timestamp without time zone",
			Default:   "NULL",
			Comment:   "Original attribute from ArcGIS API is LASTTREATDATE",
			Nullable:  true,
			Generated: false,
			AutoIncr:  false,
		},
		Lasttreatproduct: column{
			Name:      "lasttreatproduct",
			DBType:    "character varying",
			Default:   "NULL",
			Comment:   "Original attribute from ArcGIS API is LASTTREATPRODUCT",
			Nullable:  true,
			Generated: false,
			AutoIncr:  false,
		},
		Lasttreatqty: column{
			Name:      "lasttreatqty",
			DBType:    "double precision",
			Default:   "NULL",
			Comment:   "Original attribute from ArcGIS API is LASTTREATQTY",
			Nullable:  true,
			Generated: false,
			AutoIncr:  false,
		},
		Lasttreatqtyunit: column{
			Name:      "lasttreatqtyunit",
			DBType:    "character varying",
			Default:   "NULL",
			Comment:   "Original attribute from ArcGIS API is LASTTREATQTYUNIT",
			Nullable:  true,
			Generated: false,
			AutoIncr:  false,
		},
		Hectares: column{
			Name:      "hectares",
			DBType:    "double precision",
			Default:   "NULL",
			Comment:   "Original attribute from ArcGIS API is HECTARES",
			Nullable:  true,
			Generated: false,
			AutoIncr:  false,
		},
		Lastinspectactivity: column{
			Name:      "lastinspectactivity",
			DBType:    "character varying",
			Default:   "NULL",
			Comment:   "Original attribute from ArcGIS API is LASTINSPECTACTIVITY",
			Nullable:  true,
			Generated: false,
			AutoIncr:  false,
		},
		Lasttreatactivity: column{
			Name:      "lasttreatactivity",
			DBType:    "character varying",
			Default:   "NULL",
			Comment:   "Original attribute from ArcGIS API is LASTTREATACTIVITY",
			Nullable:  true,
			Generated: false,
			AutoIncr:  false,
		},
		LengthMeters: column{
			Name:      "length_meters",
			DBType:    "double precision",
			Default:   "NULL",
			Comment:   "Original attribute from ArcGIS API is LENGTH_METERS",
			Nullable:  true,
			Generated: false,
			AutoIncr:  false,
		},
		WidthMeters: column{
			Name:      "width_meters",
			DBType:    "double precision",
			Default:   "NULL",
			Comment:   "Original attribute from ArcGIS API is WIDTH_METERS",
			Nullable:  true,
			Generated: false,
			AutoIncr:  false,
		},
		Lastinspectconditions: column{
			Name:      "lastinspectconditions",
			DBType:    "character varying",
			Default:   "NULL",
			Comment:   "Original attribute from ArcGIS API is LASTINSPECTCONDITIONS",
			Nullable:  true,
			Generated: false,
			AutoIncr:  false,
		},
		Waterorigin: column{
			Name:      "waterorigin",
			DBType:    "character varying",
			Default:   "NULL",
			Comment:   "Original attribute from ArcGIS API is WATERORIGIN",
			Nullable:  true,
			Generated: false,
			AutoIncr:  false,
		},
		Creationdate: column{
			Name:      "creationdate",
			DBType:    "timestamp without time zone",
			Default:   "NULL",
			Comment:   "Original attribute from ArcGIS API is CreationDate",
			Nullable:  true,
			Generated: false,
			AutoIncr:  false,
		},
		Creator: column{
			Name:      "creator",
			DBType:    "character varying",
			Default:   "NULL",
			Comment:   "Original attribute from ArcGIS API is Creator",
			Nullable:  true,
			Generated: false,
			AutoIncr:  false,
		},
		Editdate: column{
			Name:      "editdate",
			DBType:    "timestamp without time zone",
			Default:   "NULL",
			Comment:   "Original attribute from ArcGIS API is EditDate",
			Nullable:  true,
			Generated: false,
			AutoIncr:  false,
		},
		Editor: column{
			Name:      "editor",
			DBType:    "character varying",
			Default:   "NULL",
			Comment:   "Original attribute from ArcGIS API is Editor",
			Nullable:  true,
			Generated: false,
			AutoIncr:  false,
		},
		Jurisdiction: column{
			Name:      "jurisdiction",
			DBType:    "character varying",
			Default:   "NULL",
			Comment:   "Original attribute from ArcGIS API is JURISDICTION",
			Nullable:  true,
			Generated: false,
			AutoIncr:  false,
		},
		ShapeLength: column{
			Name:      "shape__length",
			DBType:    "double precision",
			Default:   "NULL",
			Comment:   "Original attribute from ArcGIS API is Shape__Length",
			Nullable:  true,
			Generated: false,
			AutoIncr:  false,
		},
		Geometry: column{
			Name:      "geometry",
			DBType:    "jsonb",
			Default:   "",
			Comment:   "",
			Nullable:  false,
			Generated: false,
			AutoIncr:  false,
		},
		Geospatial: column{
			Name:      "geospatial",
			DBType:    "geometry",
			Default:   "NULL",
			Comment:   "",
			Nullable:  true,
			Generated: false,
			AutoIncr:  false,
		},
		Version: column{
			Name:      "version",
			DBType:    "integer",
			Default:   "1",
			Comment:   "",
			Nullable:  false,
			Generated: false,
			AutoIncr:  false,
		},
		OrganizationID: column{
			Name:      "organization_id",
			DBType:    "integer",
			Default:   "",
			Comment:   "",
			Nullable:  false,
			Generated: false,
			AutoIncr:  false,
		},
	},
	Indexes: fieldseekerLinelocationIndexes{
		LinelocationPkey: index{
			Type: "btree",
			Name: "linelocation_pkey",
			Columns: []indexColumn{
				{
					Name:         "globalid",
					Desc:         null.FromCond(false, true),
					IsExpression: false,
				},
				{
					Name:         "version",
					Desc:         null.FromCond(false, true),
					IsExpression: false,
				},
			},
			Unique:        true,
			Comment:       "",
			NullsFirst:    []bool{false, false},
			NullsDistinct: false,
			Where:         "",
			Include:       []string{},
		},
	},
	PrimaryKey: &constraint{
		Name:    "linelocation_pkey",
		Columns: []string{"globalid", "version"},
		Comment: "",
	},
	ForeignKeys: fieldseekerLinelocationForeignKeys{
		FieldseekerLinelocationLinelocationOrganizationIDFkey: foreignKey{
			constraint: constraint{
				Name:    "fieldseeker.linelocation.linelocation_organization_id_fkey",
				Columns: []string{"organization_id"},
				Comment: "",
			},
			ForeignTable:   "organization",
			ForeignColumns: []string{"id"},
		},
	},

	Comment: "",
}

type fieldseekerLinelocationColumns struct {
	Objectid                column
	Name                    column
	Zone                    column
	Habitat                 column
	Priority                column
	Usetype                 column
	Active                  column
	Description             column
	Accessdesc              column
	Comments                column
	Symbology               column
	Externalid              column
	Acres                   column
	Nextactiondatescheduled column
	Larvinspectinterval     column
	LengthFT                column
	WidthFT                 column
	Zone2                   column
	Locationnumber          column
	Globalid                column
	CreatedUser             column
	CreatedDate             column
	LastEditedUser          column
	LastEditedDate          column
	Lastinspectdate         column
	Lastinspectbreeding     column
	Lastinspectavglarvae    column
	Lastinspectavgpupae     column
	Lastinspectlstages      column
	Lastinspectactiontaken  column
	Lastinspectfieldspecies column
	Lasttreatdate           column
	Lasttreatproduct        column
	Lasttreatqty            column
	Lasttreatqtyunit        column
	Hectares                column
	Lastinspectactivity     column
	Lasttreatactivity       column
	LengthMeters            column
	WidthMeters             column
	Lastinspectconditions   column
	Waterorigin             column
	Creationdate            column
	Creator                 column
	Editdate                column
	Editor                  column
	Jurisdiction            column
	ShapeLength             column
	Geometry                column
	Geospatial              column
	Version                 column
	OrganizationID          column
}

func (c fieldseekerLinelocationColumns) AsSlice() []column {
	return []column{
		c.Objectid, c.Name, c.Zone, c.Habitat, c.Priority, c.Usetype, c.Active, c.Description, c.Accessdesc, c.Comments, c.Symbology, c.Externalid, c.Acres, c.Nextactiondatescheduled, c.Larvinspectinterval, c.LengthFT, c.WidthFT, c.Zone2, c.Locationnumber, c.Globalid, c.CreatedUser, c.CreatedDate, c.LastEditedUser, c.LastEditedDate, c.Lastinspectdate, c.Lastinspectbreeding, c.Lastinspectavglarvae, c.Lastinspectavgpupae, c.Lastinspectlstages, c.Lastinspectactiontaken, c.Lastinspectfieldspecies, c.Lasttreatdate, c.Lasttreatproduct, c.Lasttreatqty, c.Lasttreatqtyunit, c.Hectares, c.Lastinspectactivity, c.Lasttreatactivity, c.LengthMeters, c.WidthMeters, c.Lastinspectconditions, c.Waterorigin, c.Creationdate, c.Creator, c.Editdate, c.Editor, c.Jurisdiction, c.ShapeLength, c.Geometry, c.Geospatial, c.Version, c.OrganizationID,
	}
}

type fieldseekerLinelocationIndexes struct {
	LinelocationPkey index
}

func (i fieldseekerLinelocationIndexes) AsSlice() []index {
	return []index{
		i.LinelocationPkey,
	}
}

type fieldseekerLinelocationForeignKeys struct {
	FieldseekerLinelocationLinelocationOrganizationIDFkey foreignKey
}

func (f fieldseekerLinelocationForeignKeys) AsSlice() []foreignKey {
	return []foreignKey{
		f.FieldseekerLinelocationLinelocationOrganizationIDFkey,
	}
}

type fieldseekerLinelocationUniques struct{}

func (u fieldseekerLinelocationUniques) AsSlice() []constraint {
	return []constraint{}
}

type fieldseekerLinelocationChecks struct{}

func (c fieldseekerLinelocationChecks) AsSlice() []check {
	return []check{}
}
