コード例 #1
0
ファイル: DbgDotNetObjectIdImpl.cs プロジェクト: zz110/dnSpy
 public DbgDotNetObjectIdImpl(DbgCorValueHolder value, uint id)
 {
     if (!value.CorValue.IsHandle)
     {
         throw new ArgumentException();
     }
     Value = value;
     Id    = id;
 }
コード例 #2
0
        public DbgDotNetValueImpl(DbgEngineImpl engine, DbgCorValueHolder value)
        {
            this.engine = engine ?? throw new ArgumentNullException(nameof(engine));
            this.value  = value ?? throw new ArgumentNullException(nameof(value));
            Type        = value.Type;
            var corValue = value.CorValue;

            rawValue = new DbgDotNetRawValueFactory(engine).Create(corValue, Type);

            var flags = ValueFlags.None;

            if (corValue.IsNull)
            {
                if (Type.IsByRef)
                {
                    flags |= ValueFlags.IsNullByRef;
                }
                else
                {
                    flags |= ValueFlags.IsNull;
                }
            }
            this.flags = flags;
        }