protected internal override void VisitLoadLength(LoadLength node, object data) { StackTypes stack = data as StackTypes; Verifier.ProcessLdLen(stack); AddTask(node.Next,stack); }
protected internal virtual void VisitLoadLength(LoadLength node, object data) { throw new NodeNotSupportedException(node); }
protected override void VisitLoadLength(LoadLength upNode, object o) { }
protected override void VisitLoadLength(LoadLength upNode, object o) { State state = o as State; ReferenceBTValue arr = state.Stack.Pop() as ReferenceBTValue; BTType btType = arr.BTType; PrimitiveBTValue length = new PrimitiveBTValue(btType); state.Stack.Push(length); Annotation.SetNodeBTType(upNode, btType); }
protected internal override void VisitLoadLength(LoadLength node, object data) { generator.Emit(OpCodes.Ldlen); AddTask(node.Next,null); }