private ClassDescriptor(string packageVMName, string name, long stamp, string srcFileName, MethodDescriptor[] methods) { if (packageVMName == null) throw new ArgumentNullException("null input: packageVMName"); if (name == null) throw new ArgumentNullException("null input: name"); if (methods == null) throw new ArgumentNullException("null input: methods"); m_packageVMName = packageVMName; m_name = name; m_stamp = stamp; m_srcFileName = srcFileName; m_methods = methods; }
public static ClassDescriptor ReadExternal(EmmaBinaryReader ebr) { string packageVMName = ebr.ReadUTF(); string name = ebr.ReadUTF(); long stamp = ebr.ReadLong(); sbyte srcFileNameFlag = ebr.ReadSbyte(); string srcFileName = srcFileNameFlag != 0 ? ebr.ReadUTF() : null; int length = ebr.ReadInt32(); MethodDescriptor[] methods = new MethodDescriptor[length]; for (int i = 0; i < length; ++i) { methods[i] = MethodDescriptor.ReadExternal(ebr); } return new ClassDescriptor(packageVMName,name,stamp,srcFileName,methods); }