コード例 #1
0
ファイル: MethodAction.cs プロジェクト: profMagija/JavaNet
 public BinaryOperationAction(CalculatedValue target, Op operation, JavaValue value1, JavaValue value2)
 {
     Target    = target ?? throw new ArgumentNullException(nameof(target));
     Operation = operation;
     Value1    = value1 ?? throw new ArgumentNullException(nameof(value1));
     Value2    = value2 ?? throw new ArgumentNullException(nameof(value2));
 }
コード例 #2
0
ファイル: MethodAction.cs プロジェクト: profMagija/JavaNet
 public ConditionalJumpAction(JavaValue value, ActionBlock target, JumpCondition condition, JavaValue valueCmp = null)
 {
     Value     = value ?? throw new ArgumentNullException(nameof(value));
     Target    = target ?? throw new ArgumentNullException(nameof(target));
     Condition = condition;
     ValueCmp  = valueCmp;
 }
コード例 #3
0
ファイル: MethodAction.cs プロジェクト: profMagija/JavaNet
        public InvokeAction(CalculatedValue target, JavaValue instance, MethodReference method, JavaValue[] args, bool virt = false)
        {
            Target   = target;
            Instance = instance;
            Method   = method;
            Args     = args;
            Virtual  = virt;

            if (Instance == null)
            {
                Debug.Assert(!Virtual || !Method.HasThis);
            }
        }
コード例 #4
0
ファイル: MethodAction.cs プロジェクト: profMagija/JavaNet
 public SetFieldAction(JavaValue target, JavaValue value, FieldReference field)
 {
     Target = target;
     Value  = value;
     Field  = field;
 }
コード例 #5
0
ファイル: MethodAction.cs プロジェクト: profMagija/JavaNet
 public GetFieldAction(CalculatedValue target, JavaValue from, FieldReference field)
 {
     Target = target;
     From   = @from;
     Field  = field;
 }
コード例 #6
0
ファイル: MethodAction.cs プロジェクト: profMagija/JavaNet
 public SetStaticAction(JavaValue value, FieldReference field)
 {
     Value = value;
     Field = field;
 }
コード例 #7
0
ファイル: MethodAction.cs プロジェクト: profMagija/JavaNet
 public ArrayIndexAction(CalculatedValue target, JavaValue array, JavaValue index)
 {
     Target = target;
     Array  = array;
     Index  = index;
 }
コード例 #8
0
ファイル: MethodAction.cs プロジェクト: profMagija/JavaNet
 public ArrayLengthAction(CalculatedValue target, JavaValue array)
 {
     Target = target;
     Array  = array;
 }
コード例 #9
0
ファイル: JavaState.cs プロジェクト: profMagija/JavaNet
 public JavaState Pop(out JavaValue top)
 {
     return(new JavaState(_stack.Pop(out top), _locals));
 }
コード例 #10
0
ファイル: MethodAction.cs プロジェクト: profMagija/JavaNet
 public MonitorAction(JavaValue value, bool isEnter)
 {
     Value   = value;
     IsEnter = isEnter;
 }
コード例 #11
0
ファイル: MethodAction.cs プロジェクト: profMagija/JavaNet
 public ThrowAction(JavaValue value)
 {
     Value = value;
 }
コード例 #12
0
ファイル: MethodAction.cs プロジェクト: profMagija/JavaNet
 public ReturnAction(JavaValue value = null)
 {
     Value = value;
 }
コード例 #13
0
ファイル: MethodAction.cs プロジェクト: profMagija/JavaNet
 public ConstantSetAction(CalculatedValue target, JavaValue value)
 {
     Target = target;
     Value  = value;
 }
コード例 #14
0
ファイル: MethodAction.cs プロジェクト: profMagija/JavaNet
 public UnaryOperationAction(CalculatedValue target, Op operation, JavaValue value)
 {
     Target    = target ?? throw new ArgumentNullException(nameof(target));
     Operation = operation;
     Value     = value ?? throw new ArgumentNullException(nameof(value));
 }
コード例 #15
0
ファイル: JavaState.cs プロジェクト: profMagija/JavaNet
 public JavaState Push(JavaValue o)
 {
     return(new JavaState(_stack.Push(o), _locals));
 }
コード例 #16
0
ファイル: JavaState.cs プロジェクト: profMagija/JavaNet
 public JavaState PushIf(bool cond, JavaValue val = null)
 {
     return(cond ? Push(val) : this);
 }
コード例 #17
0
ファイル: MethodAction.cs プロジェクト: profMagija/JavaNet
 public NewArrayAction(CalculatedValue target, TypeReference type, JavaValue count)
 {
     Target = target;
     Type   = type;
     Count  = count;
 }
コード例 #18
0
ファイル: JavaState.cs プロジェクト: profMagija/JavaNet
 public JavaState Store(int index, JavaValue value)
 {
     return(new JavaState(_stack, _locals.SetItem(index, value)));
 }
コード例 #19
0
ファイル: MethodAction.cs プロジェクト: profMagija/JavaNet
 public ArraySetAction(JavaValue array, JavaValue index, JavaValue value)
 {
     Array = array;
     Index = index;
     Value = value;
 }