vFile close() {
public vFile close() {
vFile close() {							// close()    if (! openfiles.containsKey(this)) {	return this;				// already closed    }    this.flush();				// flush pending output    inext = icount = 0;				// clear input buffer    openfiles.remove(this);			// remove from open file set    try {	if (pipe != null) {			// if pipe	    this.closepipe();	} else if (randfile != null) {		// if random file	    randfile.close();	}    } catch (IOException e) {	randfile = null;	instream = null;	outstream = null;	pipe = null;	iRuntime.error(214, this);		// I/O error    }    randfile = null;    instream = null;    outstream = null;    pipe = null;    return this;}