public virtual object CreateCompileUnit(string script) { var parser = new Esprima.JavaScriptParser(script); var program = parser.ParseProgram(); return(program); }
protected override IPrecompiledScript InnerPrecompile(string code, string documentName) { OriginalParsedScript parsedScript; string uniqueDocumentName = _documentNameManager.GetUniqueName(documentName); OriginalParserOptions parserOptions = CreateParserOptions(uniqueDocumentName); try { var parser = new OriginalParser(code, parserOptions); parsedScript = parser.ParseScript(); } catch (OriginalParserException e) { throw WrapParserException(e); } return(new JintPrecompiledScript(parsedScript)); }
public virtual object CreateCompileUnit(string script, out bool isExpression) { try { isExpression = false; var parser = new Esprima.JavaScriptParser(script); var program = parser.ParseProgram(); isExpression = this.IsExpression(program); return(program); } catch (Exception ex) { throw new ScriptingException($"Javascript parse error occurs: {ex.Message}.", ex); } }