# Functions
NamingCamel is a Namer function that converts the 'TestingModelName' into the 'TestingModelName' format.
NamingKebab is a Namer function that converts the 'TestingModelName' into the 'testing-model-name' format.
NamingLowerCamel is a Namer function that converts the 'TestingModelName' into the 'testingModelName' format.
NamingSnake is a Namer function that converts the 'TestingModelName' into the 'testing_model_name' format.
NestedStructFields gets the nested struct fields.
NestedStructMarshalType returns the marshal type for the provided nested struct.
NestedStructSetMarshalType sets the nested structs marshal type.
NestedStructSetSubfield sets the subfield for the nestedStructr.
NestedStructSubField returns the NestedStruct subfield if exists.
NestedStructType returns the reflect.Type of the nestedStruct.
NewModelMap creates new model map with default 'namerFunc' and a controller config 'c'.
NewModel creates new model instance.
NewReflectValueMany creates the *[]*m.Type reflect.Models.
NewReflectValueSingle creates and returns a model's new single value.
NewValueMany creates and returns a model's new slice of pointers to values.
NewValueSingle creates and returns new value for the given model type.
WithDatabaseNamingConvention sets the 'convention' as the naming convention for the model map.
WithDefaultDatabaseSchema sets the default database schema.
WithDefaultNotNull sets the default not null option for all non-pointer fields in all models.
WithDefaultNotNullModel sets the not null as the default option for all the non pointer fields in 'model'.
WithNamingConvention sets the 'convention' as the naming convention for the model map.
WithPluralCollections defines if collections are named in plural way.
WithPluralDatabaseCollections defines if the database collections are named in plural way.
# Constants
Model attribute field annotation tags.
Model attribute field annotation tags.
AnnotationClientID states if the primary field could be defined by the client.
AnnotationClosedBracket is the symbol used in filtering system which is used to open new logical part.
AnnotationCreatedAt is the neuron model field's flag that defines CreatedAt field.
AnnotationDeletedAt is the neuron model field's flag that defines DeletedAt field.
AnnotationFieldType is the neuron model field's tag used to set the neuron field type.
AnnotationFlags is the neuron model field's tag used for defining field flags.
Model foreign key field annotation tags.
Model foreign key field annotation tags.
Model foreign key field annotation tags.
Model foreign key field annotation tags.
AnnotationHidden defines that the field should be hidden from marshaling.
AnnotationI18n defines that this field is internationalization ready.
Model primary field annotation tags.
AnnotationISO8601 sets the time field format to ISO8601.
AnnotationManyToMany is the neuron relationship field tag that states this relationship is of type many2many.
AnnotationName is the neuron model field's tag used to set the NeuronName.
AnnotationNestedField is the model field's neuron tag that defines if the field type is of nested type.
AnnotationNestedSeparator is the symbol used as a separator for the nested fields access.
AnnotationNeuron is the root struct field annotation tag.
AnnotationNoFilter is the neuron model field's flag that disallows to query filter for given field.
AnnotationNotSortable is the neuron model field's flag that disallows to query sort on given field.
AnnotationOmitEmpty allows to omit marshaling this field if it's zero-value.
AnnotationOpenedBracket is the symbol used in filtering system which is used to open new logical part.
Model primary field annotation tags.
Model primary field annotation tags.
Model primary field annotation tags.
Model primary field annotation tags.
Model relationship field annotation tags.
Model relationship field annotation tags.
AnnotationSeparator is the symbol used to separate the sub-tags for given neuron tag.
AnnotationTagEqual is the symbol used to set the values for the for given neuron tag.
AnnotationTagSeparator is the symbol used to separate neuron based tags.
AnnotationUpdatedAt is the neuron model field's flag that defines UpdatedAt field.
CamelCase is the naming convention where words are not separated by any character or space and each word starts with a capital letter.
KebabCase is the naming convention where all words are in lower case letters separated by the '-' character.
KindAttribute is an 'attribute' field.
KindForeignKey is the field type that is responsible for the relationships.
KindNested is the field's type that is signed as Nested.
KindPrimary is a 'primary' field.
KindRelationshipMultiple is a 'relationship' with multiple objects.
KindRelationshipSingle is a 'relationship' with single object.
KindUnknown is the undefined field kind.
LowerCamelCase is the naming convention where words are not separated by any character or space and all but first words starts with a capital letter.
MaxInt defines maximum int value for given machine.
MaxUint defines maximum uint value for given machine.
RelBelongsTo is the enum value for the 'Belongs To' relationship.
RelHasMany is the enum value for the 'Has Many' relationship.
RelHasOne is the enum value for the 'Has One' relationship.
RelMany2Many is the enum value for the 'Many To Many' relationship.
RelUnknown is the unknown default relationship kind.
SnakeCase is the naming convention where all words are in lower case letters separated by the '_' character.
# Variables
ErrFieldNotNullable is the error classification when the field is not nullable.
ErrFieldNotParser is the error classification when the field is not a string parser.
ErrFieldValue is an invalid field value class.
ErrInternal is the error class for internal mapping errors.
ErrInvalidModelField is the error classification for invalid model field.
ErrInvalidRelationField is the error for providing invalid relation field.
ErrInvalidRelationIndex is the error for providing invalid relation index.
ErrInvalidRelationValue is the error for providing invalid relation value.
ErrMapping is the major error classification for the mapping package.
ErrModel is the minor error classification related to the models.
ErrModelContainer is the error classification with models mapping container.
ErrModelDefinition is the error classification for model without fields defined.
ErrModelNotFound is the error classification for models that are not mapped.
ErrModelNotImplements is the error classification when model doesn't implement some interface.
ErrModelNotMatch is an error where the model doesn't match with it's relationship.
ErrNamingConvention is an error classification with errors related with naming convention.
ErrNilModel is an error when the input model is nil.
ErrRelation is the minor error classification related to mapping repositories.
IntegerBitSize is the integer bit size for given machine.
# Structs
BulkFieldSet is the bulk query fieldset container.
DatabaseIndex is structure that defines database index with it's name, mapped fields, uniqueness and type.
FieldTag is the key: values pair for the given field struct's tag.
MapOptions are the options for the model map.
ModelMap contains mapped models ( as reflect.Type ) to its ModelStruct representation.
ModelStruct is the structure definition for the imported models.
NestedField is the field within the NestedStruct.
NestedStruct is the field StructField that is composed from different abstraction then the basic data types.
Relationship is the structure that contains the relation's required field's kind, join model (if exists) and the process option (onDelete, onUpdate) as well as the definition for the related model's type 'mStruct'.
StructField represents a field structure with its json api parameters.
# Interfaces
Collectioner is the interface used to get the collection name from the provided model.
DatabaseNamer is the interface used for defining model's database name - 'Table', 'Collection'.
DatabaseSchemaNamer is the interface that defines the optional database schema name for the model.
Fielder is the interface used to get and set model field values.
FromSetter is an interface that allows to set the struct field efficiently between models of the same type.
Model is the interface used for getting and setting model primary values.
MultiRelationer is the interface used to operate on the model with relationship of 'many' type like: HasMany or Many2Many.
RelationModelsLister is an interface that lists the model's unique relationship types.
RepositoryNamer is the interface used for the repositories to implement that defines it's name.
SingleRelationer is the interface used by the model with single relationship - HasOne or BelongsTo.
StructFieldValuer is an interface that gets the value for provided struct fields.
ZeroChecker is the interface that allows to check if the value is zero.
# Type aliases
FieldKind is an enum that defines the following field type (i.e.
FieldSet is a slice of fields, with some basic search functions.
MapOption is a function that sets the map options.
Models is the slice of models.
Namer is the function that change the name with some prepared formatting.
NamingConvention is the model mapping naming convention.
OrderedFieldset is the wrapper over the slice of struct fields that allows to keep the fields in an ordered sorting.
RelationshipKind is the enum used to define the Relationship's kind.