Class ParameterManager
A class implementing a parameter manager.
Implements
Inherited Members
Namespace: Microsoft.XboxStudios.BotBrain
Assembly: BotBrain.Core.dll
Syntax
[DataContract]
public class ParameterManager : IParameterManager, IEnumerable<KeyValuePair<string, object>>, IEnumerable, IEquatable<IParameterManager?>
Remarks
Initializes a new instance of the ParameterManager class.
Constructors
View SourceParameterManager(params IParameterManager?[]?)
A class implementing a parameter manager.
Declaration
public ParameterManager(params IParameterManager?[]? fallbacks)
Parameters
Type | Name | Description |
---|---|---|
IParameterManager[] | fallbacks | The fallback parameter managers. |
Remarks
Initializes a new instance of the ParameterManager class.
ParameterManager(IEnumerable<KeyValuePair<string, object>>, params IParameterManager?[]?)
Initializes a new instance of the ParameterManager class.
Declaration
public ParameterManager(IEnumerable<KeyValuePair<string, object>> initial, params IParameterManager?[]? fallbacks)
Parameters
Type | Name | Description |
---|---|---|
IEnumerable<KeyValuePair<string, object>> | initial | The initial parameters. |
IParameterManager[] | fallbacks | the fallback parameter managers. |
Properties
View SourceFallbacks
Gets a list of fallback parameter managers.
Declaration
public IReadOnlyList<IParameterManager>? Fallbacks { get; }
Property Value
Type | Description |
---|---|
IReadOnlyList<IParameterManager> |
this[string]
Retrieves a parameter value by name, checking the fallbacks if the parameter is not defined in this manager.
Declaration
public object? this[string parameterName] { get; set; }
Parameters
Type | Name | Description |
---|---|---|
string | parameterName | The parameter name (case-insensitive). |
Property Value
Type | Description |
---|---|
object | The parameter value. |
OwnParameters
Gets a dictionary of parameters defined in this manager.
Declaration
[DataMember]
public IDictionary<string, object> OwnParameters { get; }
Property Value
Type | Description |
---|---|
IDictionary<string, object> |
Methods
View SourceContainsKey(string)
Gets whether or not the parameter is defined in this manager or in its fallbacks.
Declaration
public bool ContainsKey(string parameterName)
Parameters
Type | Name | Description |
---|---|---|
string | parameterName | The parameter name. |
Returns
Type | Description |
---|---|
bool | True if the parameter was found. |
Deserialize(string)
Deserializes a parameter manager instance.
Declaration
public static ParameterManager Deserialize(string input)
Parameters
Type | Name | Description |
---|---|---|
string | input | The serialized string. |
Returns
Type | Description |
---|---|
ParameterManager | A new parameter manager from the serialized input. |
Equals(IParameterManager?)
Returns whether or not two parameter managers are equal.
Declaration
public bool Equals(IParameterManager? other)
Parameters
Type | Name | Description |
---|---|---|
IParameterManager | other | The other parameter manager to compare to. |
Returns
Type | Description |
---|---|
bool | Whether or not two parameter managers are equal. |
Equals(object?)
Determines whether the specified object is equal to the current object.
Declaration
public override bool Equals(object? obj)
Parameters
Type | Name | Description |
---|---|---|
object | obj | The object to compare with the current object. |
Returns
Type | Description |
---|---|
bool | true if the specified object is equal to the current object; otherwise, false. |
Overrides
View SourceGetEnumerator()
Gets the enumerator for enumerating the parameter manager's parameters.
Declaration
public IEnumerator<KeyValuePair<string, object>> GetEnumerator()
Returns
Type | Description |
---|---|
IEnumerator<KeyValuePair<string, object>> | An enumerator for the parameter manager. |
GetHashCode()
Serves as the default hash function.
Declaration
public override int GetHashCode()
Returns
Type | Description |
---|---|
int | A hash code for the current object. |
Overrides
View SourceRemoveOwnKey(string)
Removes the given parameter from this manager, while leaving fallbacks unchanged.
Declaration
public void RemoveOwnKey(string parameterName)
Parameters
Type | Name | Description |
---|---|---|
string | parameterName | The parameter name. |
Serialize()
Serializes the parameter manager to a string.
Declaration
public string Serialize()
Returns
Type | Description |
---|---|
string | The serialized string. |