Class MetadataContainer
A container for parameter metadata.
Implements
Inherited Members
Namespace: Microsoft.XboxStudios.BotBrain
Assembly: BotBrain.Core.dll
Syntax
public class MetadataContainer : IMetadataAccess, ICollection<ParameterMetadata>, IEnumerable<ParameterMetadata>, IDictionary<string, ParameterMetadata>, ICollection<KeyValuePair<string, ParameterMetadata>>, IEnumerable<KeyValuePair<string, ParameterMetadata>>, IEnumerable
  Constructors
View SourceMetadataContainer(IEnumerable<ParameterMetadata>?)
Initializes a new instance of the MetadataContainer class.
Declaration
public MetadataContainer(IEnumerable<ParameterMetadata>? initial = null)
  Parameters
| Type | Name | Description | 
|---|---|---|
| IEnumerable<ParameterMetadata> | initial | The initial parameters.  | 
      
Properties
View SourceCount
Gets the number of elements contained in the ICollection<T>.
Declaration
public int Count { get; }
  Property Value
| Type | Description | 
|---|---|
| int | The number of elements contained in the ICollection<T>.  | 
      
IsReadOnly
Gets a value indicating whether the ICollection<T> is read-only.
Declaration
public bool IsReadOnly { get; }
  Property Value
| Type | Description | 
|---|---|
| bool | true if the ICollection<T> is read-only; otherwise, false.  | 
      
this[string]
Gets or sets the element with the specified key.
Declaration
public ParameterMetadata this[string key] { get; set; }
  Parameters
| Type | Name | Description | 
|---|---|---|
| string | key | The key of the element to get or set.  | 
      
Property Value
| Type | Description | 
|---|---|
| ParameterMetadata | The element with the specified key.  | 
      
Exceptions
| Type | Condition | 
|---|---|
| ArgumentNullException | 
  | 
      
| KeyNotFoundException | The property is retrieved and   | 
      
| NotSupportedException | The property is set and the IDictionary<TKey, TValue> is read-only.  | 
      
Keys
Gets an ICollection<T> containing the keys of the IDictionary<TKey, TValue>.
Declaration
public ICollection<string> Keys { get; }
  Property Value
| Type | Description | 
|---|---|
| ICollection<string> | An ICollection<T> containing the keys of the object that implements IDictionary<TKey, TValue>.  | 
      
ParameterNames
Gets an enumeration of parameter names.
Declaration
public IEnumerable<string> ParameterNames { get; }
  Property Value
| Type | Description | 
|---|---|
| IEnumerable<string> | 
Values
Gets an ICollection<T> containing the values in the IDictionary<TKey, TValue>.
Declaration
public ICollection<ParameterMetadata> Values { get; }
  Property Value
| Type | Description | 
|---|---|
| ICollection<ParameterMetadata> | An ICollection<T> containing the values in the object that implements IDictionary<TKey, TValue>.  | 
      
Methods
View SourceAdd(ParameterMetadata)
Adds an item to the ICollection<T>.
Declaration
public void Add(ParameterMetadata item)
  Parameters
| Type | Name | Description | 
|---|---|---|
| ParameterMetadata | item | The object to add to the ICollection<T>.  | 
      
Exceptions
| Type | Condition | 
|---|---|
| NotSupportedException | The ICollection<T> is read-only.  | 
      
Add(KeyValuePair<string, ParameterMetadata>)
Adds an item to the ICollection<T>.
Declaration
public void Add(KeyValuePair<string, ParameterMetadata> item)
  Parameters
| Type | Name | Description | 
|---|---|---|
| KeyValuePair<string, ParameterMetadata> | item | The object to add to the ICollection<T>.  | 
      
Exceptions
| Type | Condition | 
|---|---|
| NotSupportedException | The ICollection<T> is read-only.  | 
      
Add(string, ParameterMetadata)
Adds an element with the provided key and value to the IDictionary<TKey, TValue>.
Declaration
public void Add(string key, ParameterMetadata value)
  Parameters
| Type | Name | Description | 
|---|---|---|
| string | key | The object to use as the key of the element to add.  | 
      
| ParameterMetadata | value | The object to use as the value of the element to add.  | 
      
Exceptions
| Type | Condition | 
|---|---|
| ArgumentNullException | 
  | 
      
| ArgumentException | An element with the same key already exists in the IDictionary<TKey, TValue>.  | 
      
| NotSupportedException | The IDictionary<TKey, TValue> is read-only.  | 
      
Clear()
Removes all items from the ICollection<T>.
Declaration
public void Clear()
  Exceptions
| Type | Condition | 
|---|---|
| NotSupportedException | The ICollection<T> is read-only.  | 
      
Contains(ParameterMetadata)
Determines whether the ICollection<T> contains a specific value.
Declaration
public bool Contains(ParameterMetadata item)
  Parameters
| Type | Name | Description | 
|---|---|---|
| ParameterMetadata | item | The object to locate in the ICollection<T>.  | 
      
Returns
| Type | Description | 
|---|---|
| bool | true if   | 
      
Contains(KeyValuePair<string, ParameterMetadata>)
Determines whether the ICollection<T> contains a specific value.
Declaration
public bool Contains(KeyValuePair<string, ParameterMetadata> item)
  Parameters
| Type | Name | Description | 
|---|---|---|
| KeyValuePair<string, ParameterMetadata> | item | The object to locate in the ICollection<T>.  | 
      
Returns
| Type | Description | 
|---|---|
| bool | true if   | 
      
ContainsKey(string)
Determines whether the IDictionary<TKey, TValue> contains an element with the specified key.
Declaration
public bool ContainsKey(string key)
  Parameters
| Type | Name | Description | 
|---|---|---|
| string | key | The key to locate in the IDictionary<TKey, TValue>.  | 
      
Returns
| Type | Description | 
|---|---|
| bool | true if the IDictionary<TKey, TValue> contains an element with the key; otherwise, false.  | 
      
Exceptions
| Type | Condition | 
|---|---|
| ArgumentNullException | 
  | 
      
CopyTo(ParameterMetadata[], int)
Copies the elements of the ICollection<T> to an Array, starting at a particular Array index.
Declaration
public void CopyTo(ParameterMetadata[] array, int arrayIndex)
  Parameters
| Type | Name | Description | 
|---|---|---|
| ParameterMetadata[] | array | The one-dimensional Array that is the destination of the elements copied from ICollection<T>. The Array must have zero-based indexing.  | 
      
| int | arrayIndex | The zero-based index in   | 
      
Exceptions
| Type | Condition | 
|---|---|
| ArgumentNullException | 
  | 
      
| ArgumentOutOfRangeException | 
  | 
      
| ArgumentException | The number of elements in the source ICollection<T> is greater than the available space from   | 
      
CopyTo(KeyValuePair<string, ParameterMetadata>[], int)
Copies the elements of the ICollection<T> to an Array, starting at a particular Array index.
Declaration
public void CopyTo(KeyValuePair<string, ParameterMetadata>[] array, int arrayIndex)
  Parameters
| Type | Name | Description | 
|---|---|---|
| KeyValuePair<string, ParameterMetadata>[] | array | The one-dimensional Array that is the destination of the elements copied from ICollection<T>. The Array must have zero-based indexing.  | 
      
| int | arrayIndex | The zero-based index in   | 
      
Exceptions
| Type | Condition | 
|---|---|
| ArgumentNullException | 
  | 
      
| ArgumentOutOfRangeException | 
  | 
      
| ArgumentException | The number of elements in the source ICollection<T> is greater than the available space from   | 
      
GetEnumerator()
Returns an enumerator that iterates through a collection.
Declaration
public IEnumerator GetEnumerator()
  Returns
| Type | Description | 
|---|---|
| IEnumerator | An IEnumerator object that can be used to iterate through the collection.  | 
      
GetParameterMetadata(string)
Gets the metadata for a parameter.
Declaration
public ParameterMetadata? GetParameterMetadata(string parameterName)
  Parameters
| Type | Name | Description | 
|---|---|---|
| string | parameterName | The parameter name.  | 
      
Returns
| Type | Description | 
|---|---|
| ParameterMetadata | The metadata, if it exists.  | 
      
Remove(ParameterMetadata)
Removes the first occurrence of a specific object from the ICollection<T>.
Declaration
public bool Remove(ParameterMetadata item)
  Parameters
| Type | Name | Description | 
|---|---|---|
| ParameterMetadata | item | The object to remove from the ICollection<T>.  | 
      
Returns
| Type | Description | 
|---|---|
| bool | true if   | 
      
Exceptions
| Type | Condition | 
|---|---|
| NotSupportedException | The ICollection<T> is read-only.  | 
      
Remove(KeyValuePair<string, ParameterMetadata>)
Removes the first occurrence of a specific object from the ICollection<T>.
Declaration
public bool Remove(KeyValuePair<string, ParameterMetadata> item)
  Parameters
| Type | Name | Description | 
|---|---|---|
| KeyValuePair<string, ParameterMetadata> | item | The object to remove from the ICollection<T>.  | 
      
Returns
| Type | Description | 
|---|---|
| bool | true if   | 
      
Exceptions
| Type | Condition | 
|---|---|
| NotSupportedException | The ICollection<T> is read-only.  | 
      
Remove(string)
Removes the element with the specified key from the IDictionary<TKey, TValue>.
Declaration
public bool Remove(string key)
  Parameters
| Type | Name | Description | 
|---|---|---|
| string | key | The key of the element to remove.  | 
      
Returns
| Type | Description | 
|---|---|
| bool | true if the element is successfully removed; otherwise, false.  This method also returns false if   | 
      
Exceptions
| Type | Condition | 
|---|---|
| ArgumentNullException | 
  | 
      
| NotSupportedException | The IDictionary<TKey, TValue> is read-only.  | 
      
TryGetValue(string, out ParameterMetadata)
Gets the value associated with the specified key.
Declaration
public bool TryGetValue(string key, out ParameterMetadata value)
  Parameters
| Type | Name | Description | 
|---|---|---|
| string | key | The key whose value to get.  | 
      
| ParameterMetadata | value | When this method returns, the value associated with the specified key, if the key is found; otherwise, the default value for the type of the   | 
      
Returns
| Type | Description | 
|---|---|
| bool | true if the object that implements IDictionary<TKey, TValue> contains an element with the specified key; otherwise, false.  | 
      
Exceptions
| Type | Condition | 
|---|---|
| ArgumentNullException | 
  |