Пример #1
0
 public void Read(SignatureReader rdr)
 {
     pl   = rdr.ReadByte();
     vars = new LocalVarCollection();
     vars.Read(rdr);
 }
Пример #2
0
 public void Read(SignatureReader rdr)
 {
     t.Read(rdr);
 }
Пример #3
0
 public abstract void Read(SignatureReader rdr);
Пример #4
0
        public static TypeElement ReadType(SignatureReader rdr)
        {
            TypeElement ret;

            switch (rdr.GetElementTypeAhead())
            {
            case ElementType.Void:
            case ElementType.TypedByRef:
                ret = new BaseType(); break;

            case ElementType.Boolean:
            case ElementType.Char:
            case ElementType.Int8:
            case ElementType.UInt8:
            case ElementType.Int16:
            case ElementType.UInt16:
            case ElementType.Int32:
            case ElementType.UInt32:
            case ElementType.Int64:
            case ElementType.UInt64:
            case ElementType.Single:
            case ElementType.Double:
            case ElementType.IntPtr:
            case ElementType.UIntPtr:
            case ElementType.Object:
            case ElementType.String:
                ret = new BaseType(); break;

            case ElementType.Array:
                ret = new ARRAY(); break;

            case ElementType.Class:
                ret = new CLASS(); break;

            case ElementType.FnPtr:
                ret = new FNPTR(); break;

            case ElementType.GenericInstance:
                ret = new GENERICINST(); break;

            case ElementType.MethodGenericVar:
                ret = new MVAR(); break;

            case ElementType.Pointer:
                ret = new PTR(); break;

            case ElementType.SzArray:
                ret = new SZARRAY(); break;

            case ElementType.ValueType:
                ret = new VALUETYPE(); break;

            case ElementType.GenericVar:
                ret = new VAR(); break;

            default:
                throw new InvalidOperationException();
            }
            ret.Read(rdr);
            return(ret);
        }
Пример #5
0
 public void Read(SignatureReader rdr)
 {
     pl = rdr.ReadByte();
     ts = new TypeElementCollection();
     ts.Read(rdr);
 }