示例#1
0
        public Object VisitReadInputNode(IReadInputASTNode readNode)
        {
            if (readNode == null)
            {
                throw new ArgumentNullException("readNode", "The argument cannot equal to null");
            }

            if (mInputStream == null)
            {
                throw new CRuntimeError("The data pointer is out of range");
            }

            int[] readOpParameter = (int[])readNode.Index.Accept(this);

            int readDataIndex = readOpParameter.Length >= 1 ? readOpParameter[0] : 0;

            return(mInputStream.Read(readDataIndex));
        }
示例#2
0
 public string VisitReadInputNode(IReadInputASTNode readNode)
 {
     return(string.Format("READ({0})", readNode.Index.Accept(this)));
 }