Example #1
0
            public override bool Rewrite(CodeDescriptor decompilee, MethodBase callee, StackElement[] args, IDecompiler stack, IFunctionBuilder builder)
            {
                LiteralReference lvref = (LiteralReference)args[0].Expr;
                Variable         lv    = lvref.ReferencedObject as Variable;

                if (lv == null)
                {
                    throw new InvalidOperationException("DoNotUnroll must be applied to a local variable!");
                }
                stack.DoNotUnroll(lv.LocalIndex);
                return(true);
            }