function pushStringParam(string, type) {
	    this.pushContext();
	    this.pushString(type);

	    // If it's a subexpression, the string result
	    // will be pushed after this opcode.
	    if (type !== 'SubExpression') {
	      if (typeof string === 'string') {
	        this.pushString(string);
	      } else {
	        this.pushStackLiteral(string);
	      }
	    }
	  }
function pushStringParam(string, type) {
	    this.pushContext();
	    this.pushString(type);

	    
	    
	    if (type !== 'SubExpression') {
	      if (typeof string === 'string') {
	        this.pushString(string);
	      } else {
	        this.pushStackLiteral(string);
	      }
	    }
	  }
function pushStringParam ( string , type ) { this . pushContext ( ) ; this . pushString ( type ) ; // If it's a subexpression, the string result // will be pushed after this opcode. if ( type !== 'SubExpression' ) { if ( typeof string === 'string' ) { this . pushString ( string ) ; } else { this . pushStackLiteral ( string ) ; } } }
[pushStringParam]  On stack, before: ... On stack, after: string, currentContext, ...  This opcode is designed for use in string mode, which provides the string value of a parameter along with its depth rather than resolving it immediately.
[ pushStringParam ] On stack before : ... On stack after : string currentContext ... This opcode is designed for use in string mode which provides the string value of a parameter along with its depth rather than resolving it immediately .