public static string Dump(ImmutableFour value) { var assistant = new AssistantDumper(); Dump(assistant, value); return(assistant.ToString()); }
static internal ImmutableFour Create(uint position) { var result = new ImmutableFour(); Populate(result, position); return(result); }
static internal void Dump(AssistantDumper assistant, ImmutableFour value, bool withSeparator = false) { assistant.IncrementDepth(); if (assistant.MaximumDepthExceeded()) { return; } assistant.AddStartObject(); assistant.AddType("CSharpRefImpl.CSharpModel.ImmutableFour", true /*withSeparator*/); if (value == null) { assistant.Add("data", "<null>"); assistant.AddEndObject(); return; } assistant.AddKey("data"); assistant.AddPairSeparator(); assistant.AddStartObject(); assistant.Add("Prop0", value.Prop0, true /*withSeparator*/); assistant.Add("Prop1", value.Prop1, true /*withSeparator*/); assistant.AddKey("Prop2"); assistant.AddPairSeparator(); CSharpRefImpl.CSharpModel.ComplexBuiltinsDumper.Dump(assistant, value.Prop2, true /*withSeparator*/); assistant.AddKey("Prop3"); assistant.AddPairSeparator(); CSharpRefImpl.CSharpModel.ImmutableOnePrimitiveDumper.Dump(assistant, value.Prop3); assistant.AddEndObject(); // data assistant.AddEndObject(); // main object assistant.HandleMemberSeparator(withSeparator); assistant.DecrementDepth(); }
static internal void Populate(ImmutableFour value, uint position) { value.Prop0 = AssistantSequenceGenerator.CreateBool(position + 0); value.Prop1 = AssistantSequenceGenerator.CreateString(position + 1); value.Prop2 = CSharpRefImpl.CSharpModel.ComplexBuiltinsSequenceGenerator.Create(position + 2); value.Prop3 = CSharpRefImpl.CSharpModel.ImmutableOnePrimitiveSequenceGenerator.Create(position + 3); }