MapClear
Map clear writer is IWriter<Void, Map>.
IWriter<Avalanche.Void, Dictionary<string, int>> mapClear;
Creating a writer
MapClear<Map, Element> is default map writer for IDictionary<K, V>.
IWriter<Avalanche.Void, Dictionary<string, int>> mapClear = new MapClear<Dictionary<string, int>, string, int>();
Map.Create(mapType, keyType, valueType) and Map.Create(mapType, keyType, valueType) also create the writer.
IWriter<Avalanche.Void, Dictionary<string, int>> mapClear =
(IWriter<Avalanche.Void, Dictionary<string, int>>)
MapClear.Create(typeof(Dictionary<string, int>));
Map clear can adapted from delegate.
IWriter<Avalanche.Void, Dictionary<string, int>> mapClear = DelegateWriter.Invoke<Dictionary<string, int>>(map => map.Clear());
MapClearRequest(Type) is a request to build a map clear writer.
MapClearRequest mapRequest = new MapClearRequest(typeof(Dictionary<string, int>));
IWriter<Avalanche.Void, Dictionary<string, int>> mapClear =
AccessorServices.Instance
.GetRequired<MapClearRequest, IWriter<Avalanche.Void, Dictionary<string, int>>>(mapRequest);
Usage
Writer clears map.
Dictionary<string, int> map = new Dictionary<string, int> { { "A", 1 }, { "B", 2 }, { "C", 3 } };
mapClear.Write(default, map);
Full Example
Full example
using System.Collections.Generic;
using Avalanche.Accessor;
using Avalanche.Accessor.Map;
using Avalanche.Writer;
public class mapclear
{
public static void Run()
{
{
#pragma warning disable CS0168
// <01>
IWriter<Avalanche.Void, Dictionary<string, int>> mapClear;
// </01>
#pragma warning restore CS0168
}
{
// <10>
IWriter<Avalanche.Void, Dictionary<string, int>> mapClear = new MapClear<Dictionary<string, int>, string, int>();
// </10>
Dictionary<string, int> map = new Dictionary<string, int> { { "A", 1 }, { "B", 2 }, { "C", 3 } };
mapClear.Write(default, map);
}
{
// <11>
IWriter<Avalanche.Void, Dictionary<string, int>> mapClear =
(IWriter<Avalanche.Void, Dictionary<string, int>>)
MapClear.Create(typeof(Dictionary<string, int>));
// </11>
Dictionary<string, int> map = new Dictionary<string, int> { { "A", 1 }, { "B", 2 }, { "C", 3 } };
mapClear.Write(default, map);
}
{
// <12>
IWriter<Avalanche.Void, Dictionary<string, int>> mapClear = DelegateWriter.Invoke<Dictionary<string, int>>(map => map.Clear());
// </12>
Dictionary<string, int> map = new Dictionary<string, int> { { "A", 1 }, { "B", 2 }, { "C", 3 } };
mapClear.Write(default, map);
}
{
// <16>
MapClearRequest mapRequest = new MapClearRequest(typeof(Dictionary<string, int>));
IWriter<Avalanche.Void, Dictionary<string, int>> mapClear =
AccessorServices.Instance
.GetRequired<MapClearRequest, IWriter<Avalanche.Void, Dictionary<string, int>>>(mapRequest);
// </16>
Dictionary<string, int> map = new Dictionary<string, int> { { "A", 1 }, { "B", 2 }, { "C", 3 } };
mapClear.Write(default, map);
}
{
IWriter<Avalanche.Void, Dictionary<string, int>> mapClear = new MapClear<Dictionary<string, int>, string, int>();
// <21>
Dictionary<string, int> map = new Dictionary<string, int> { { "A", 1 }, { "B", 2 }, { "C", 3 } };
mapClear.Write(default, map);
// </21>
}
}
}