private IProtoSerializer BuildSerializer() { // note the caller here is MetaType.BuildSerializer, which already has the sync-lock IProtoSerializer ser = new SubItemSerializer(derivedType.Type, derivedType.GetKey(false, false), derivedType, false); return(new TagDecorator(fieldNumber, WireType.String, false, ser)); }
private IProtoSerializer BuildSerializer() { WireType wireType = WireType.String; if (dataFormat == DataFormat.Group) { wireType = WireType.StartGroup; } IProtoSerializer tail = new SubItemSerializer(derivedType.Type, derivedType.GetKey(false, false), derivedType, false); return(new TagDecorator(fieldNumber, wireType, false, tail)); }
private IProtoSerializer BuildSerializer() { WireType wireType = WireType.String; if (dataFormat == DataFormat.Group) { wireType = WireType.StartGroup; } IProtoSerializer tail = new SubItemSerializer(derivedType.Type, derivedType.GetKey(demand: false, getBaseKey: false), derivedType, recursionCheck: false); return(new TagDecorator(fieldNumber, wireType, strict: false, tail)); }
private IProtoSerializer BuildSerializer() { // note the caller here is MetaType.BuildSerializer, which already has the sync-lock WireType wireType = WireType.String; if (dataFormat == DataFormat.Group) { wireType = WireType.StartGroup; // only one exception } IProtoSerializer ser = new SubItemSerializer(derivedType.Type, derivedType.GetKey(false, false), derivedType, false); return(new TagDecorator(fieldNumber, wireType, false, ser)); }
private IProtoSerializer BuildSerializer() { IProtoSerializer ser = new SubItemSerializer(derivedType.Type, derivedType.GetKey(false, false), derivedType); return(new TagDecorator(fieldNumber, WireType.String, false, ser)); }