Abstract base class for IConfigurator implementations.
abstract class
|
ConfiguratorBase
|
with
|
<T>
|
||
implements
|
IConfigurator<T>
|
||||
base of
|
ConfiguratorEnum
|
||||
ConfiguratorObject
|
Returns the configuration type of this configurator.
public
abstract
property
|
Type
{
get
}
|
||
type
|
ConfigType
|
||
value
|
|
The configuration type. | |
implements
|
IConfiguratorBase.Type
|
Creates a new instance from a field of the given configuration value.
[OwnerReturn]
|
||||
public
method
|
FromField
(ConfigValue config,
string field)
|
|||
type
|
T
|
|||
params
|
config
|
[not-null]
|
The configuration value. | |
field
|
[not-null]
|
Field name. | ||
returns
|
|
The created instance. | ||
implements
|
IConfigurator.FromField
|
Creates a new instance from the given configuration entity.
[OwnerReturn]
|
||||
public
method
|
FromScript
(ConfigScript script,
string name)
|
|||
type
|
T
|
|||
params
|
script
|
[not-null]
|
The config script. | |
name
|
[not-null]
|
Name of the entity. | ||
returns
|
|
The created instance. | ||
implements
|
IConfigurator.FromScript
|
Creates a new instance from the given configuration value.
[OwnerReturn]
|
||||
public
virtual
method
|
FromValue
(ConfigValue config)
|
|||
type
|
T
|
|||
params
|
config
|
[not-null]
|
The configuration value. | |
returns
|
|
The created instance. | ||
implements
|
IConfigurator.FromValue
|
Creates an array of instances from the given configuration value.
[OwnerReturn]
|
||||
public
method
|
FromValueArray
(ConfigValue config)
|
|||
type
|
T[]
|
|||
params
|
config
|
[not-null]
|
The configuration value. | |
returns
|
The
resulting
array
or
null
if
config
contains
zero
elements.
|
|||
implements
|
IConfigurator.FromValueArray
|
Creates an array of instances from the given configuration value.
[OwnerReturn]
|
||||
public
method
|
FromValueList
(ConfigValue config)
|
|||
type
|
IVector<T>
|
|||
params
|
config
|
[not-null]
|
The configuration value. | |
returns
|
The
resulting
array
or
null
if
config
contains
zero
elements.
|
|||
implements
|
IConfigurator.FromValueList
|
This is a no-op method that forces the compiler / linker to include this type in the resulting binary.
public
method
|
PleaseIncludeInBinaryThanks
()
|
||
implements
|
IPleaseIncludeInBinaryThanks.PleaseIncludeInBinaryThanks
|
Remarks:
Calling this stub method makes sure that all lazy constructor calls have been made.
To initialize everything, an application needs to call this method on its root module(s) (see TinmanModule), followed by a call to PleaseIncludeInBinaryThanksAll.
Returns the configuration value that describes the given object.
public
abstract
method
|
ToValue
(T instance)
|
||
type
|
ConfigValue
|
||
params
|
instance
|
The object. | |
returns
|
|
The configuration value. | |
implements
|
IConfigurator.ToValue
|
Remarks:
The returned value may be of type Invalid, which means that the given object in its current state cannot be described with the configuration API.
Returns the configuration value that describes the given objects.
public
method
|
ToValueArray
(T[] instances)
|
||
type
|
ConfigValue
|
||
params
|
instances
|
The object. | |
returns
|
|
The configuration array value. | |
implements
|
IConfigurator.ToValueArray
|
Remarks:
The returned value may be of type Invalid, which means that the given object in its current state cannot be described with the configuration API.
Returns the configuration value that describes the given objects.
public
method
|
ToValueList
(IVectorConst<T> instances)
|
||
type
|
ConfigValue
|
||
params
|
instances
|
The object. | |
returns
|
|
The configuration array value. | |
implements
|
IConfigurator.ToValueList
|
Remarks:
The returned value may be of type Invalid, which means that the given object in its current state cannot be described with the configuration API.
Configures a native value from the given config value.
[OwnerReturn]
|
||||
protected
virtual
method
|
DoFromValue
(ConfigValue config)
|
|||
type
|
T
|
|||
params
|
config
|
The
config
value
(will
never
be
null ). |
||
returns
|
The configured native value. |
Remarks:
If the implementing method does not know how to configure a native object from config, it can try to delegate to a more specific configurator by calling the base implementation.
This default implementation always throws a ConfigException.
The default implementation of ConfiguratorObject delegates the process of configuring a native object from config to a more specific configurator, defined by a derived type of Type.