public static PersistentReturnType Resolve(IReturnType source, ITypeResolver typeResolver) { if (source == null) return null; PersistentReturnType rt = new PersistentReturnType (); rt.FullyQualifiedName = typeResolver.Resolve (source.FullyQualifiedName); rt.pointerNestingLevel = source.PointerNestingLevel; rt.arrayDimensions = source.ArrayDimensions; return rt; }
public static PersistentReturnType Read(BinaryReader reader, INameDecoder nameTable) { if (PersistentHelper.ReadNull (reader)) return null; PersistentReturnType rt = new PersistentReturnType (); rt.FullyQualifiedName = PersistentHelper.ReadString (reader, nameTable); rt.pointerNestingLevel = reader.ReadInt32(); uint count = reader.ReadUInt32(); rt.arrayDimensions = new int[count]; for (uint i = 0; i < rt.arrayDimensions.Length; ++i) { rt.arrayDimensions[i] = reader.ReadInt32(); } return rt; }