예제 #1
0
 protected override void WriteReadBaseClassHandler(ClassBaseObject classBaseObject, ClassBaseObject.SubclassPair subclassPair)
 {
     writer.WriteLine($"return {this.MakeReadValueMethod(subclassPair.Subclass.FullName)}(input);");
 }
예제 #2
0
        protected override void WriteBaseClassHandler(ClassBaseObject classBaseObject, ClassBaseObject.SubclassPair subclass, string castedName)
        {
            var paramName = $"{this.TrimNameSpace(subclass.Subclass.FullName)}.{classBaseObject.TypeDiscriminator.Name}";

            WriteFieldType(classBaseObject.TypeDiscriminator.Type, paramName, 0);
            writer.WriteLine($"Write({castedName}, output);");
        }
 protected abstract void WriteBaseClassHandler(ClassBaseObject classBaseObject, ClassBaseObject.SubclassPair subclass, string castedName);
 // var shortName = CodeGeneratorUtils.GetPrimitiveName(subclassPair.Subclass.FullName);
 // writer.WriteLine($"return Read{shortName}(input);");
 protected abstract void WriteReadBaseClassHandler(ClassBaseObject classBaseObject, ClassBaseObject.SubclassPair subclassPair);
예제 #5
0
        protected override void WriteBaseClassHandler(ClassBaseObject classBaseObject, ClassBaseObject.SubclassPair subclass, string castedName)
        {
            var paramName = $"{this.TrimNameSpace(subclass.Subclass.FullName)}.{classBaseObject.TypeDiscriminator.Name}";

            writer.WriteLine($"var result = Write({castedName});");
            writer.WriteLine($"result[\"{classBaseObject.TypeDiscriminator.CamelCaseName}\"] = {paramName};");
            writer.WriteLine("return result;");
        }