Push() public méthode

public Push ( bool value ) : void
value bool
Résultat void
        public override int Run(InterpretedFrame frame) {
            DebugInfo info = DebugInfo.GetMatchingDebugInfo(_debugInfos, frame.FaultingInstruction);
            if (info != null && !info.IsClear) {
                frame.Push(info.StartLine);
            }else{
                frame.Push(-1);
            }

            return +1;
        }
 public override int Run(InterpretedFrame frame) {
     frame.Push(PythonOps.MakeClosureCell());
     return +1;
 }
Exemple #3
0
        private ExceptionHandler HandleCatch(InterpretedFrame frame, Exception exception) {
            Type exceptionType = exception.GetType();
            var handler = GetBestHandler(frame, exceptionType);
            if (handler == null) {
                return null;
            }

            frame.StackIndex = _numberOfLocals + handler.HandlerStackDepth;
            if (handler.IsFinallyOrFault) {
                frame.InstructionIndex = handler.StartHandlerIndex;

                RunBlock(frame, handler.EndHandlerIndex);
                if (frame.InstructionIndex == handler.EndHandlerIndex) {
                    frame.InstructionIndex -= 1; // push back into the right range

                    return HandleCatch(frame, exception);
                } else {
                    return handler;
                }
            } else {
                if (handler.PushException) {
                    frame.Push(exception);
                }

                frame.InstructionIndex = handler.StartHandlerIndex;
                return handler;
            }
        }
 public override int Run(InterpretedFrame frame) {
     // it�s okay to pop the args in this order due to commutativity of referential equality
     frame.Push(PythonOps.IsNot(frame.Pop(), frame.Pop()));
     return +1;
 }
 public override int Run(InterpretedFrame frame)
 {
     frame.Push(TotemOps.GetParentContextFromFunction((TotemFunction)frame.Pop()));
     return +1;
 }
Exemple #6
0
 public override int Run(InterpretedFrame frame)
 {
     // unfortunately Type.IsInstanceOfType() is 35-times slower than "is T" so we use generic code:
     frame.Push(ScriptingRuntimeHelpers.BooleanToObject(frame.Pop() is T));
     return(+1);
 }
 public override int Run(InterpretedFrame frame)
 {
     Single right = (Single)frame.Pop();
     frame.Push(((Single)frame.Pop()) > right);
     return +1;
 }
Exemple #8
0
 public override int Run(InterpretedFrame frame) {
     var ret = new IStrongBox[_count];
     for (int i = ret.Length - 1; i >= 0; i--) {
         ret[i] = (IStrongBox)frame.Pop();
     }
     frame.Push(RuntimeVariables.Create(ret));
     return +1;
 }
Exemple #9
0
 public override int Run(InterpretedFrame frame) {
     frame.Parent = RubyExceptionData.CurrentInterpretedFrame.Update(frame);
     frame.Push(frame);
     return +1;
 }
Exemple #10
0
 public override int Run(InterpretedFrame frame)
 {
     frame.Push((bool)frame.Pop() ? ScriptingRuntimeHelpers.False : ScriptingRuntimeHelpers.True);
     return(+1);
 }
            public override int Run(InterpretedFrame frame) {
                if (_site == null) {
                    _site = CallSite<Func<CallSite, object, CodeContext, object>>.Create(_binder);
                }

                var context = (CodeContext)frame.Pop();
                frame.Push(_site.Target(_site, frame.Pop(), context));
                return +1;
            }
Exemple #12
0
 public override int Run(InterpretedFrame frame)
 {
     frame.Push(((Byte)frame.Pop()) == ((Byte)frame.Pop()));
     return(+1);
 }
 public override int Run(InterpretedFrame frame)
 {
     frame.Push(TotemOps.GetLocalClosureFromFunction((TotemFunction)frame.Pop()));
     return +1;
 }
Exemple #14
0
 public override int Run(InterpretedFrame frame) {
     frame.Push (value);
     return +1;
 }
Exemple #15
0
 public override int Run(InterpretedFrame frame)
 {
     Int32 right = (Int32)frame.Pop();
     frame.Push(((Int32)frame.Pop()) < right);
     return +1;
 }
Exemple #16
0
 public override int Run(InterpretedFrame frame)
 {
     Byte right = (Byte)frame.Pop();
     frame.Push(((Byte)frame.Pop()) < right);
     return +1;
 }
Exemple #17
0
 public override int Run(InterpretedFrame frame)
 {
     frame.Push(_field.GetValue(frame.Pop()));
     return(+1);
 }
Exemple #18
0
        public sealed override int Run(InterpretedFrame frame) {
            object[] args = new object[_argumentCount];
            for (int i = _argumentCount - 1; i >= 0; i--) {
                args[i] = frame.Pop();
            }

            object ret = Invoke(args);
            if (_target.ReturnType != typeof(void)) {
                frame.Push(ret);
            }
            return +1;
        }
Exemple #19
0
 public override int Run(InterpretedFrame frame) {
     var arg0 = frame.Pop();
     var target = frame.Pop();
     frame.Push(_site.Target(_site, (CodeContext)frame.Pop(), target, arg0));
     return +1;
 }
Exemple #20
0
 public override int Run(InterpretedFrame frame)
 {
     frame.Push(default(T));
     return(+1);
 }
Exemple #21
0
 public override int Run(InterpretedFrame frame) {
     var arg5 = frame.Pop();
     var arg4 = frame.Pop();
     var arg3 = frame.Pop();
     var arg2 = frame.Pop();
     var arg1 = frame.Pop();
     var arg0 = frame.Pop();
     var target = frame.Pop();
     frame.Push(_site.Target(_site, (CodeContext)frame.Pop(), target, arg0, arg1, arg2, arg3, arg4, arg5));
     return +1;
 }
        public override int Run(InterpretedFrame frame) {
            var targetDelegate = _targetField.GetValue(_site);

            object[] args = new object[_argCount];
            
            for (int i = _argCount - 1; i >= 1; i--) {
                args[i] = frame.Pop();
            }
            args[0] = _site;

            object ret = _target.InvokeInstance(targetDelegate, args);
            if (!_isVoid) frame.Push(ret);
            return +1;
        }
 public override int Run(InterpretedFrame frame) {
     if (_isLocal) {
         frame.Push(PythonOps.GetLocal((CodeContext)frame.Pop(), _name));
     } else {
         frame.Push(PythonOps.GetGlobal((CodeContext)frame.Pop(), _name));
     }
     return +1;
 }
Exemple #24
0
            public override int Run(InterpretedFrame frame) {
                object[] defaults;
                if (_defaultCount > 0) {
                    defaults = new object[_defaultCount];
                    for (int i = 0; i < _defaultCount; i++) {
                        defaults[i] = frame.Pop();
                    }
                } else {
                    defaults = ArrayUtils.EmptyObjects;
                }

                object modName;
                if (_name != null) {
                    modName = _name.RawValue;
                } else {
                    modName = frame.Pop();
                }

                CodeContext context = /*_context ?? */(CodeContext)frame.Pop();
                
                frame.Push(PythonOps.MakeFunction(context, _def.FunctionCode, modName, defaults));

                return +1;
            }
 public override int Run(InterpretedFrame frame) {
     frame.Push(PythonOps.MakeEmptyDict());
     return +1;
 }
Exemple #26
0
 public override int Run(InterpretedFrame frame) {
     frame.Push((bool)frame.Pop() ? ScriptingRuntimeHelpers.False : ScriptingRuntimeHelpers.True);
     return +1;
 }
 public override int Run(InterpretedFrame frame)
 {
     frame.Push(_global.CurrentValueLightThrow);
     return +1;
 }
 public override int Run(InterpretedFrame frame) {
     frame.Push(((Byte)frame.Pop()) != ((Byte)frame.Pop()));
     return +1;
 }
 public override int Run(InterpretedFrame frame)
 {
     frame.Push(TotemOps.GetVariable((CodeContext)frame.Pop(), _name, !_isLocal, _lightThrow));
     return +1;
 }
Exemple #30
0
 public override int Run(InterpretedFrame frame)
 {
     Char right = (Char)frame.Pop();
     frame.Push(((Char)frame.Pop()) < right);
     return +1;
 }
Exemple #31
0
 public override int Run(InterpretedFrame frame) {
     frame.Push(_field.GetValue(frame.Pop()));
     return +1;
 }
Exemple #32
0
 public override int Run(InterpretedFrame frame)
 {
     UInt64 right = (UInt64)frame.Pop();
     frame.Push(((UInt64)frame.Pop()) < right);
     return +1;
 }
Exemple #33
0
 public override int Run(InterpretedFrame frame)
 {
     frame.Push(frame.Pop() != frame.Pop());
     return(+1);
 }
Exemple #34
0
 public override int Run(InterpretedFrame frame) {
     frame.Push(((UInt64)frame.Pop()) == ((UInt64)frame.Pop()));
     return +1;
 }
Exemple #35
0
 public override int Run(InterpretedFrame frame)
 {
     frame.Push(((UInt64)frame.Pop()) != ((UInt64)frame.Pop()));
     return(+1);
 }
 public override int Run(InterpretedFrame frame) {
     frame.Push(Convert(frame.Pop()));
     return +1;
 }
Exemple #37
0
 public override int Run(InterpretedFrame frame)
 {
     // unfortunately Type.IsInstanceOfType() is 35-times slower than "is T" so we use generic code:
     frame.Push(frame.Pop() is T);
     return(+1);
 }
 public override int Run(InterpretedFrame frame) {
     frame.Push(PythonOps.GetGlobalContext((CodeContext)frame.Pop()));
     return +1;
 }
Exemple #39
0
 public override int Run(InterpretedFrame frame)
 {
     frame.Push(value);
     return(+1);
 }