nl_tokens: Opens a file in a pointer
pl_tokens: function OpenCommand ( args , define ) { var lowerArgs = args . toLowerCase ( ) ; var forIndex = lowerArgs . indexOf ( ' for ' ) ; if ( forIndex === - 1 ) throw new SyntaxError ( 'OPEN without FOR' ) ; var filename = new statements . ExpressionStatement ( args . substring ( 0 , forIndex ) . trim ( ) , define ) ; var asIndex = lowerArgs . indexOf ( ' as ' ) ; if ( asIndex === - 1 ) throw new SyntaxError ( 'OPEN without AS' ) ; var type = args . substring ( forIndex + 5 , asIndex ) . trim ( ) . toLowerCase ( ) ; if ( type !== 'input' && type !== 'output' && type !== 'append' ) throw new SyntaxError ( 'Invalid mode' ) ; var <mask> = new statements . ExpressionStatement ( args . substring ( asIndex + 4 ) . trim ( ) , define ) ; if ( ! ( pointer . child instanceof statements . PointerStatement ) ) throw new SyntaxError ( 'Expected pointer' ) ; this . filename = filename ; this . type = type ; this . pointer = pointer ; }