Note
In the following code examples - for easier
readability - exception handling has been omitted.
public CharConverter(
bool throwing = true,
char defaultValue = '\x0000'
)
Public Sub New (
Optional throwing As Boolean = true,
Optional defaultValue As Char = "\x0000"C
)
public:
CharConverter(
bool throwing = true,
wchar_t defaultValue = L'\x0000'
)
new :
?throwing : bool *
?defaultValue : char
(* Defaults:
let _throwing = defaultArg throwing true
let _defaultValue = defaultArg defaultValue '\x0000'
*)
-> CharConverter
Object serialization with CSV:
using FolkerKinzel.CsvTools;
using FolkerKinzel.CsvTools.Mappings;
using FolkerKinzel.CsvTools.Mappings.TypeConverters;
namespace Benchmarks;
internal static partial class CalculationWriter
{
internal static string WriteDefault(Calculation[] data)
{
var doubleConverter = new DoubleConverter();
CsvMapping mapping = CsvMappingBuilder
.Create()
.AddProperty("First", doubleConverter)
.AddProperty("Operator", new CharConverter())
.AddProperty("Second", doubleConverter)
.AddProperty("Result", doubleConverter)
.Build();
return data.ToCsv(
mapping,
static (calculation, mapping) =>
{
mapping.First = calculation.First;
mapping.Operator = calculation.Operator;
mapping.Second = calculation.Second;
mapping.Result = calculation.Result;
});
}
}