public TransactionType( Identificator id, string name, TransactionType reverseType, TypeVariation typeVariation) : base(id, name) { ReverseType = reverseType; TypeVariation = typeVariation; }
/// <summary> /// Generates sample data for the specified mode. /// </summary> public string GetSampleData(TypeVariation mode) { Func <TypeInfo, string> func = SampleDataLookup[Type]; if (mode == TypeVariation.Standard || mode == TypeVariation.Nullable) { string s; if (mode == TypeVariation.Standard) { s = func(this); } else // Nullable { s = (Random.Next(3) != 1) ? func(this) : "null"; } //return $"({CompleteType.GetFullTypeCName(this, mode)}){s}"; return($"{s}"); } else // Array or NullableArray { string[] array = new string[10]; if (mode == TypeVariation.Array) { for (int i = 0; i < array.Length; i++) { array[i] = func(this); } } else // NullableArray { for (int i = 0; i < array.Length; i++) { array[i] = (Random.Next(3) != 1) ? func(this) : "null"; } } return($"new {CompleteType.GetFullTypeCName(this, mode)} {{ {string.Join(", ", array)} }}"); } }
public CompleteType(TypeInfo type, TypeVariation variation) { Type = type; Variation = variation; }