Documentation ¶
Index ¶
- Variables
- func NeedConversion(object interface{}, strict bool, typeName string) bool
- type BaseHelper
- func (bh BaseHelper) AsDictionary(object interface{}) baseIDict
- func (bh BaseHelper) AsList(object interface{}) baseIList
- func (bh BaseHelper) Convert(object interface{}) interface{}
- func (bh BaseHelper) CreateDictionary(args ...int) baseIDict
- func (bh BaseHelper) CreateList(args ...int) baseIList
- func (bh BaseHelper) NewList(items ...interface{}) baseIList
- func (bh BaseHelper) NewStringList(items ...string) baseIList
- func (bh BaseHelper) TryAsDictionary(object interface{}) (baseIDict, error)
- func (bh BaseHelper) TryAsDictionaryStrict(object interface{}) (baseIDict, error)
- func (bh BaseHelper) TryAsList(object interface{}) (baseIList, error)
- func (bh BaseHelper) TryConvert(object interface{}) (interface{}, bool)
- type DictHelper
- func (dh DictHelper) Add(dict baseIDict, key interface{}, value interface{}) baseIDict
- func (dh DictHelper) AsDictionary(object interface{}) baseIDict
- func (dh DictHelper) Clone(dict baseIDict, keys []interface{}) baseIDict
- func (dh DictHelper) Default(dict baseIDict, key, defVal interface{}) interface{}
- func (dh DictHelper) Delete(dict baseIDict, keys []interface{}) (baseIDict, error)
- func (dh DictHelper) Flush(dict baseIDict, keys []interface{}) baseIDict
- func (dh DictHelper) Get(dict baseIDict, keys []interface{}) interface{}
- func (dh DictHelper) GetKeys(dict baseIDict) baseIList
- func (dh DictHelper) GetTypes(dict baseIDict, kind bool) baseIDict
- func (dh DictHelper) GetValues(dict baseIDict) baseIList
- func (dh DictHelper) Has(dict baseIDict, keys []interface{}) bool
- func (dh DictHelper) KeysAsString(dict baseIDict) collections.StringArray
- func (dh DictHelper) Merge(target baseIDict, sources []baseIDict) baseIDict
- func (dh DictHelper) Omit(dict baseIDict, keys []interface{}) baseIDict
- func (dh DictHelper) Pop(dict baseIDict, keys []interface{}) interface{}
- func (dh DictHelper) Set(dict baseIDict, key interface{}, value interface{}) baseIDict
- func (dh DictHelper) Transpose(dict baseIDict) baseIDict
- func (dh DictHelper) Type(dict baseIDict) str
- type DictTypeName
- type ListHelper
- func (lh ListHelper) Add(list baseIList, prepend bool, objects ...interface{}) baseIList
- func (lh ListHelper) Clone(list baseIList) baseIList
- func (lh ListHelper) Contains(list baseIList, strict bool, values ...interface{}) bool
- func (lh ListHelper) Find(list baseIList, element interface{}, strict bool) baseIList
- func (lh ListHelper) GetIndexes(list baseIList, indexes ...int) interface{}
- func (lh ListHelper) GetStringArray(list baseIList) strArray
- func (lh ListHelper) GetStrings(list baseIList) []string
- func (lh ListHelper) GetTypes(list baseIList, kind bool) baseIList
- func (lh ListHelper) Intersect(list baseIList, values ...interface{}) baseIList
- func (lh ListHelper) Remove(list baseIList, indexes ...int) baseIList
- func (lh ListHelper) RemoveEmpty(list baseIList) baseIList
- func (lh ListHelper) RemoveNil(list baseIList) baseIList
- func (lh ListHelper) Reverse(list baseIList) baseIList
- func (lh ListHelper) SetIndex(list baseIList, index int, value interface{}) (baseIList, error)
- func (lh ListHelper) Type(list baseIList) str
- func (lh ListHelper) Unique(list baseIList) baseIList
- func (lh ListHelper) Without(list baseIList, values ...interface{}) baseIList
- type ListTypeName
Constants ¶
This section is empty.
Variables ¶
var DictionaryHelper collections.IDictionaryHelper = baseDictHelper
DictionaryHelper gives public access to the basic dictionary functions
var GenericListHelper collections.IListHelper = baseListHelper
GenericListHelper gives public access to the basic list functions
Functions ¶
func NeedConversion ¶
NeedConversion determine if the object need deep conversion.
strict indicates that the type must be converted to the desired type even if the object implements the Dictionary or List interface.
Types ¶
type BaseHelper ¶
type BaseHelper struct { ConvertList func(list baseIList) baseIList ConvertDict func(dict baseIDict) baseIDict NeedConversion func(object interface{}, strict bool) bool }
BaseHelper implements basic functionalities required for both IGenericList & IDictionary
func (BaseHelper) AsDictionary ¶
func (bh BaseHelper) AsDictionary(object interface{}) baseIDict
AsDictionary converts object to IDictionary object. It panics if conversion is impossible.
func (BaseHelper) AsList ¶
func (bh BaseHelper) AsList(object interface{}) baseIList
AsList converts object to IGenericList object. It panics if conversion is impossible.
func (BaseHelper) Convert ¶
func (bh BaseHelper) Convert(object interface{}) interface{}
Convert tries to convert the supplied object into IDictionary or IGenericList. Returns the supplied object if not conversion occurred.
func (BaseHelper) CreateDictionary ¶
func (bh BaseHelper) CreateDictionary(args ...int) baseIDict
CreateDictionary creates a new IDictionary with optional capacity arguments.
func (BaseHelper) CreateList ¶
func (bh BaseHelper) CreateList(args ...int) baseIList
CreateList creates a new IGenericList with optional size/capacity arguments.
func (BaseHelper) NewList ¶
func (bh BaseHelper) NewList(items ...interface{}) baseIList
NewList creates a new IGenericList from supplied arguments.
func (BaseHelper) NewStringList ¶
func (bh BaseHelper) NewStringList(items ...string) baseIList
NewStringList creates a new IGenericList from supplied arguments.
func (BaseHelper) TryAsDictionary ¶
func (bh BaseHelper) TryAsDictionary(object interface{}) (baseIDict, error)
TryAsDictionary tries to convert any object to IDictionary object.
func (BaseHelper) TryAsDictionaryStrict ¶
func (bh BaseHelper) TryAsDictionaryStrict(object interface{}) (baseIDict, error)
TryAsDictionaryStrict tries to convert any object to IDictionary object.
func (BaseHelper) TryAsList ¶
func (bh BaseHelper) TryAsList(object interface{}) (baseIList, error)
TryAsList attempts to convert the given object to a baseIList. If the object is a pointer, it dereferences it first. If the object is already a baseIList, it returns it directly. If the object is nil, it creates a new list. If the object is a slice or array, it creates a new list and populates it with the elements of the slice or array. If the object can be converted to a baseList, it performs the conversion. If the object cannot be converted to a baseIList, it returns an error. If the resulting list needs conversion, it creates a new list and copies the elements to it.
Parameters: - object: The object to be converted to a baseIList.
Returns: - baseIList: The converted list. - error: An error if the object cannot be converted to a baseIList.
func (BaseHelper) TryConvert ¶
func (bh BaseHelper) TryConvert(object interface{}) (interface{}, bool)
TryConvert tries to convert any object to IGenericList or IDictionary object. Returns true if a conversion occurred.
type DictHelper ¶
type DictHelper struct {
BaseHelper
}
DictHelper implements basic functionalities required for IDictionary.
func (DictHelper) Add ¶
func (dh DictHelper) Add(dict baseIDict, key interface{}, value interface{}) baseIDict
Add adds value to an existing key instead of replacing the value as done by set.
func (DictHelper) AsDictionary ¶
func (dh DictHelper) AsDictionary(object interface{}) baseIDict
AsDictionary returns the object casted as IDictionary.
func (DictHelper) Clone ¶
func (dh DictHelper) Clone(dict baseIDict, keys []interface{}) baseIDict
Clone returns a distinct copy of the object with only supplied keys. If no keys are supplied, all keys from d are copied.
func (DictHelper) Default ¶
func (dh DictHelper) Default(dict baseIDict, key, defVal interface{}) interface{}
Default returns defVal if dictionary doesn't contain key, otherwise, simply returns entry corresponding to key.
func (DictHelper) Delete ¶
func (dh DictHelper) Delete(dict baseIDict, keys []interface{}) (baseIDict, error)
Delete removes the entry value associated with key. The entry must exist.
func (DictHelper) Flush ¶
func (dh DictHelper) Flush(dict baseIDict, keys []interface{}) baseIDict
Flush removes all specified keys from the dictionary. If no key is specified, all keys are removed.
func (DictHelper) Get ¶
func (dh DictHelper) Get(dict baseIDict, keys []interface{}) interface{}
Get returns the value associated with key.
func (DictHelper) GetKeys ¶
func (dh DictHelper) GetKeys(dict baseIDict) baseIList
GetKeys returns the keys in the dictionary in alphabetical order.
func (DictHelper) GetTypes ¶ added in v3.3.5
func (dh DictHelper) GetTypes(dict baseIDict, kind bool) baseIDict
GetTypes returns a dictionary with key and type (or kind) for each element.
func (DictHelper) GetValues ¶
func (dh DictHelper) GetValues(dict baseIDict) baseIList
GetValues returns the values in the dictionary in key alphabetical order.
func (DictHelper) Has ¶
func (dh DictHelper) Has(dict baseIDict, keys []interface{}) bool
Has returns true if the dictionary object contains all the keys.
func (DictHelper) KeysAsString ¶
func (dh DictHelper) KeysAsString(dict baseIDict) collections.StringArray
KeysAsString returns the keys in the dictionary in alphabetical order.
func (DictHelper) Merge ¶
func (dh DictHelper) Merge(target baseIDict, sources []baseIDict) baseIDict
Merge merges the other dictionaries into the current dictionary.
func (DictHelper) Omit ¶
func (dh DictHelper) Omit(dict baseIDict, keys []interface{}) baseIDict
Omit returns a distinct copy of the object including all keys except specified ones.
func (DictHelper) Pop ¶
func (dh DictHelper) Pop(dict baseIDict, keys []interface{}) interface{}
Pop returns and remove the objects with the specified keys.
func (DictHelper) Set ¶
func (dh DictHelper) Set(dict baseIDict, key interface{}, value interface{}) baseIDict
Set sets key to value in the dictionary.
func (DictHelper) Transpose ¶
func (dh DictHelper) Transpose(dict baseIDict) baseIDict
Transpose returns a dictionary with values as keys and keys as values. The resulting dictionary is a dictionary where each key could contains single value or list of values if there are multiple matches.
func (DictHelper) Type ¶ added in v3.3.5
func (dh DictHelper) Type(dict baseIDict) str
Type returns the actual type of object.
type DictTypeName ¶
type DictTypeName = baseDict
DictTypeName implementation of IDictionary for baseDict
type ListHelper ¶
type ListHelper struct {
BaseHelper
}
ListHelper implements basic functionalities required for IGenericList.
func (ListHelper) Add ¶
func (lh ListHelper) Add(list baseIList, prepend bool, objects ...interface{}) baseIList
Add adds elements at the end of the supplied list.
func (ListHelper) Clone ¶
func (lh ListHelper) Clone(list baseIList) baseIList
Clone returns a copy of the supplied list.
func (ListHelper) Contains ¶
func (lh ListHelper) Contains(list baseIList, strict bool, values ...interface{}) bool
Contains indicates if the list contains all specified elements
func (ListHelper) Find ¶ added in v3.5.0
func (lh ListHelper) Find(list baseIList, element interface{}, strict bool) baseIList
Find returns the position of the searched element in the list.
func (ListHelper) GetIndexes ¶
func (lh ListHelper) GetIndexes(list baseIList, indexes ...int) interface{}
GetIndexes returns the element at position index in the list. If index is out of bound, nil is returned.
func (ListHelper) GetStringArray ¶
func (lh ListHelper) GetStringArray(list baseIList) strArray
GetStringArray returns a StringArray representation of the list.
func (ListHelper) GetStrings ¶
func (lh ListHelper) GetStrings(list baseIList) []string
GetStrings returns a string array representation of the list.
func (ListHelper) GetTypes ¶ added in v3.3.5
func (lh ListHelper) GetTypes(list baseIList, kind bool) baseIList
GetTypes returns a list with all types (or kinds) for each element.
func (ListHelper) Intersect ¶
func (lh ListHelper) Intersect(list baseIList, values ...interface{}) baseIList
Intersect returns a new list that is the result of the intersection of the list and the parameters.
func (ListHelper) Remove ¶
func (lh ListHelper) Remove(list baseIList, indexes ...int) baseIList
Remove returns a new list without the element specified.
func (ListHelper) RemoveEmpty ¶ added in v3.5.0
func (lh ListHelper) RemoveEmpty(list baseIList) baseIList
RemoveEmpty returns a new list without the empty elements.
func (ListHelper) RemoveNil ¶ added in v3.5.0
func (lh ListHelper) RemoveNil(list baseIList) baseIList
RemoveNil returns a new list without the nil elements.
func (ListHelper) Reverse ¶
func (lh ListHelper) Reverse(list baseIList) baseIList
Reverse returns a copy of the current list in reverse order.
func (ListHelper) SetIndex ¶
func (lh ListHelper) SetIndex(list baseIList, index int, value interface{}) (baseIList, error)
SetIndex sets the value at position index into the list. If list is not large enough, it is enlarged to fit the index.
func (ListHelper) Type ¶ added in v3.3.5
func (lh ListHelper) Type(list baseIList) str
Type returns the actual type of object.
func (ListHelper) Unique ¶
func (lh ListHelper) Unique(list baseIList) baseIList
Unique returns a copy of the list removing all duplicate elements.
func (ListHelper) Without ¶
func (lh ListHelper) Without(list baseIList, values ...interface{}) baseIList
Without returns a copy of the list removing specified elements.
type ListTypeName ¶
type ListTypeName = baseList
ListTypeName implementation of IGenericList for baseList