Documentation
¶
Overview ¶
Package mapping provides functions for defining and executing the database schema.
Index ¶
- Variables
- func Area(val string, elem *element.OSMElem, geom *geom.Geometry, match Match) interface{}
- func Bool(val string, elem *element.OSMElem, geom *geom.Geometry, match Match) interface{}
- func BoolInt(val string, elem *element.OSMElem, geom *geom.Geometry, match Match) interface{}
- func DefaultWayZOrder(val string, elem *element.OSMElem, geom *geom.Geometry, match Match) interface{}
- func Direction(val string, elem *element.OSMElem, geom *geom.Geometry, match Match) interface{}
- func Geometry(val string, elem *element.OSMElem, geom *geom.Geometry, match Match) interface{}
- func Id(val string, elem *element.OSMElem, geom *geom.Geometry, match Match) interface{}
- func Integer(val string, elem *element.OSMElem, geom *geom.Geometry, match Match) interface{}
- func KeyName(val string, elem *element.OSMElem, geom *geom.Geometry, match Match) interface{}
- func RelationMemberID(rel *element.Relation, member *element.Member, match Match) interface{}
- func RelationMemberIndex(rel *element.Relation, member *element.Member, match Match) interface{}
- func RelationMemberRole(rel *element.Relation, member *element.Member, match Match) interface{}
- func RelationMemberType(rel *element.Relation, member *element.Member, match Match) interface{}
- func SelectRelationPolygons(polygonTagMatcher RelWayMatcher, rel *element.Relation) []element.Member
- func String(val string, elem *element.OSMElem, geom *geom.Geometry, match Match) interface{}
- func ValueName(val string, elem *element.OSMElem, geom *geom.Geometry, match Match) interface{}
- func WebmercArea(val string, elem *element.OSMElem, geom *geom.Geometry, match Match) interface{}
- type Areas
- type DestTable
- type ElementFilter
- type ExcludeFilter
- type Field
- type FieldSpec
- type FieldType
- type Filters
- type GeneralizedTable
- type GeneralizedTables
- type Key
- type KeyValues
- type MakeMakeValue
- type MakeMemberValue
- type MakeValue
- func MakeEnumerate(fieldName string, fieldType FieldType, field Field) (MakeValue, error)
- func MakeHStoreString(fieldName string, fieldType FieldType, field Field) (MakeValue, error)
- func MakePseudoArea(fieldName string, fieldType FieldType, field Field) (MakeValue, error)
- func MakeSuffixReplace(fieldName string, fieldType FieldType, field Field) (MakeValue, error)
- func MakeWayZOrder(fieldName string, fieldType FieldType, field Field) (MakeValue, error)
- func MakeZOrder(fieldName string, fieldType FieldType, field Field) (MakeValue, error)
- type Mapping
- func (m *Mapping) ElementFilters() map[string][]ElementFilter
- func (m *Mapping) LineStringMatcher() WayMatcher
- func (m *Mapping) NodeTagFilter() TagFilterer
- func (m *Mapping) PointMatcher() NodeMatcher
- func (m *Mapping) PolygonMatcher() RelWayMatcher
- func (m *Mapping) RelationMatcher() RelationMatcher
- func (m *Mapping) RelationMemberMatcher() RelationMatcher
- func (m *Mapping) RelationTagFilter() TagFilterer
- func (m *Mapping) WayTagFilter() TagFilterer
- type Match
- type NodeMatcher
- type OrderedDestTable
- type RelWayMatcher
- type RelationMatcher
- type RelationTagFilter
- type SubMapping
- type Table
- type TableFields
- type TableType
- type Tables
- type TagFilter
- type TagFilterer
- type TagTables
- type Tags
- type TypeMappings
- type Value
- type WayMatcher
Constants ¶
This section is empty.
Variables ¶
View Source
var AvailableFieldTypes map[string]FieldType
Functions ¶
func DefaultWayZOrder ¶
func RelationMemberID ¶
func RelationMemberIndex ¶
func RelationMemberRole ¶
func RelationMemberType ¶
func SelectRelationPolygons ¶
func SelectRelationPolygons(polygonTagMatcher RelWayMatcher, rel *element.Relation) []element.Member
SelectRelationPolygons returns a slice of all members that are already imported as part of the relation. Outer members are "imported" if they share the same destination table. Inner members are "imported" when they also share the same key/value.
Types ¶
type ExcludeFilter ¶
type ExcludeFilter struct {
// contains filtered or unexported fields
}
type Field ¶
type FieldSpec ¶
func (*FieldSpec) MemberValue ¶
type FieldType ¶
type FieldType struct { Name string GoType string Func MakeValue MakeFunc MakeMakeValue MemberFunc MakeMemberValue FromMember bool }
type GeneralizedTable ¶
type GeneralizedTables ¶
type GeneralizedTables map[string]*GeneralizedTable
type MakeMemberValue ¶
type MakeValue ¶
func MakeEnumerate ¶
func MakeHStoreString ¶
func MakePseudoArea ¶
func MakeSuffixReplace ¶
func MakeWayZOrder ¶
type Mapping ¶
type Mapping struct { Tables Tables `yaml:"tables"` GeneralizedTables GeneralizedTables `yaml:"generalized_tables"` Tags Tags `yaml:"tags"` Areas Areas `yaml:"areas"` // SingleIdSpace mangles the overlapping node/way/relation IDs // to be unique (nodes positive, ways negative, relations negative -1e17) SingleIdSpace bool `yaml:"use_single_id_space"` }
func NewMapping ¶
func (*Mapping) ElementFilters ¶
func (m *Mapping) ElementFilters() map[string][]ElementFilter
func (*Mapping) LineStringMatcher ¶
func (m *Mapping) LineStringMatcher() WayMatcher
func (*Mapping) NodeTagFilter ¶
func (m *Mapping) NodeTagFilter() TagFilterer
func (*Mapping) PointMatcher ¶
func (m *Mapping) PointMatcher() NodeMatcher
func (*Mapping) PolygonMatcher ¶
func (m *Mapping) PolygonMatcher() RelWayMatcher
func (*Mapping) RelationMatcher ¶
func (m *Mapping) RelationMatcher() RelationMatcher
func (*Mapping) RelationMemberMatcher ¶
func (m *Mapping) RelationMemberMatcher() RelationMatcher
func (*Mapping) RelationTagFilter ¶
func (m *Mapping) RelationTagFilter() TagFilterer
func (*Mapping) WayTagFilter ¶
func (m *Mapping) WayTagFilter() TagFilterer
type Match ¶
type Match struct { Key string Value string Table DestTable // contains filtered or unexported fields }
type NodeMatcher ¶
type OrderedDestTable ¶
type OrderedDestTable struct { DestTable // contains filtered or unexported fields }
type RelWayMatcher ¶
type RelWayMatcher interface { WayMatcher RelationMatcher }
type RelationMatcher ¶
type RelationTagFilter ¶
type RelationTagFilter struct {
TagFilter
}
type SubMapping ¶
type SubMapping struct {
Mapping KeyValues
}
type Table ¶
type Table struct { Name string Type TableType `yaml:"type"` Mapping KeyValues `yaml:"mapping"` Mappings map[string]SubMapping `yaml:"mappings"` TypeMappings TypeMappings `yaml:"type_mappings"` Fields []*Field `yaml:"columns"` // TODO rename Fields internaly to Columns OldFields []*Field `yaml:"fields"` Filters *Filters `yaml:"filters"` }
func (*Table) TableFields ¶
func (t *Table) TableFields() *TableFields
type TableFields ¶
type TableFields struct {
// contains filtered or unexported fields
}
func (*TableFields) MakeMemberRow ¶
type TagFilterer ¶
type TagTables ¶
type TagTables map[Key]map[Value][]OrderedDestTable
type TypeMappings ¶
type WayMatcher ¶
Click to show internal directories.
Click to hide internal directories.