mirror of
https://github.com/Jermolene/TiddlyWiki5
synced 2024-08-24 18:46:41 +00:00
104 lines
4.1 KiB
HTML
104 lines
4.1 KiB
HTML
<!DOCTYPE html>
|
|
<html lang="en">
|
|
<head>
|
|
<meta charset="utf-8">
|
|
<title>Esprima</title>
|
|
<link rel="stylesheet" type="text/css" href="assets/style.css"/>
|
|
</head>
|
|
<body>
|
|
<div class="container">
|
|
|
|
<div class="topbar">
|
|
<ul class="nav">
|
|
<li><a href="index.html">← Home</a></li>
|
|
<li><a href="http://github.com/ariya/esprima">Code</a></li>
|
|
<li><a href="http://wiki.esprima.org">Documentation</a></li>
|
|
<li><a href="http://issues.esprima.org">Issues</a></li>
|
|
</ul>
|
|
</div>
|
|
|
|
<h1>Esprima <small>ECMAScript parsing infrastructure for multipurpose analysis</small></h1>
|
|
|
|
<div class="main">
|
|
<p>Esprima (<a href="http://esprima.org">esprima.org</a>) is an educational
|
|
<a href="http://www.ecma-international.org/publications/standards/Ecma-262.htm">ECMAScript</a>
|
|
(also popularly known as <a href="http://en.wikipedia.org/wiki/JavaScript">JavaScript</a>)
|
|
parsing infrastructure for multipurpose analysis. It is also written in ECMAScript.</p>
|
|
|
|
<p>Esprima serves as a good basis for various tools such as source modification
|
|
(<a href="https://github.com/ariya/esmorph">Esmorph</a>), coverage analyzer
|
|
(<a href="https://github.com/itay/node-cover">node-cover</a> and
|
|
<a href="https://github.com/coveraje/coveraje">coveraje</a>),
|
|
source-to-source compiler (<a href="https://github.com/Yoric/Marv-the-Tinker">Marv</a>),
|
|
syntax formatter (<a href="https://github.com/fawek/codepainter">Code Painter</a>),
|
|
and code generator (<a href="https://github.com/Constellation/escodegen">escodegen</a>).
|
|
</p>
|
|
|
|
<p>Esprima can be used in a web browser:</p>
|
|
|
|
<pre><script src="esprima.js"><script></pre>
|
|
|
|
<p>or in a Node.js application via the package manager:</p>
|
|
|
|
<pre>npm install esprima</pre>
|
|
|
|
<p>Esprima parser output is compatible with Mozilla (SpiderMonkey)
|
|
<a href="https://developer.mozilla.org/en/SpiderMonkey/Parser_API">Parser API</a>.</p>
|
|
|
|
<p>A very simple example:</p>
|
|
|
|
<pre>esprima.parse('var answer=42').body[0].declarations[0].init</pre>
|
|
|
|
<p>produces the following object:</p>
|
|
|
|
<pre>{ type: 'Literal', value: 42 }</pre>
|
|
|
|
<p>Esprima is still in the development, for now please check
|
|
<a href="http://wiki.esprima.org">the wiki documentation</a>.</p>
|
|
|
|
<p>Since it is not comprehensive nor complete, refer to the
|
|
<a href="http://issues.esprima.org">issue tracker</a> for
|
|
<a href="http://code.google.com/p/esprima/issues/list?q=Defect">known problems</a>
|
|
and <a href="http://code.google.com/p/esprima/issues/list?q=Enhancement">future plans</a>.
|
|
Esprima is supported on <a href="http://code.google.com/p/esprima/wiki/BrowserCompatibility">many browsers</a>:
|
|
IE 6+, Firefox 1+, Safari 3+, Chrome 1+, and Opera 8+.</p>
|
|
|
|
<p>Feedback and contribution are welcomed! Please join the
|
|
<a href="http://groups.google.com/group/esprima">mailing list</a> and read the
|
|
<a href="http://code.google.com/p/esprima/wiki/ContributionGuide">contribution guide</a>
|
|
for further info.</p>
|
|
|
|
</div>
|
|
|
|
<div class="sidebar">
|
|
<h3>Useful demos</h3>
|
|
<ul>
|
|
<li><a href="demo/parse.html">Code parser</a></li>
|
|
<li><a href="demo/precedence.html">Operator precedence</a></li>
|
|
<li><a href="demo/collector.html">Regex collector</a></li>
|
|
<li><a href="demo/functiontrace.html">Function tracing</a></li>
|
|
<li><a href="demo/rewrite.html">Source rewrite</a></li>
|
|
</ul>
|
|
<h3>Harness tests</h3>
|
|
<ul>
|
|
<li><a href="test/index.html">Unit tests</a></li>
|
|
<li><a href="test/compat.html">Compatibility tests</a></li>
|
|
<li><a href="test/coverage.html">Coverage analysis</a></li>
|
|
</ul>
|
|
<h3>Need for speed</h3>
|
|
<ul>
|
|
<li><a href="test/benchmarks.html">Benchmarks suite</a></li>
|
|
<li><a href="test/compare.html">Speed comparison</a></li>
|
|
</ul>
|
|
</div>
|
|
|
|
<br clear="all"/>
|
|
|
|
<div class="footer"><strong>Esprima</strong> is created by
|
|
<a href="http://ariya.ofilabs.com/about" target="_blank">Ariya Hidayat</a>. Follow <a href="http://twitter.com/ariyahidayat">@ariyahidayat</a> on Twitter.
|
|
</div>
|
|
</div>
|
|
<a href="http://github.com/ariya/esprima"><img style="position: absolute; top: 0; right: 0; border: 0;" src="https://a248.e.akamai.net/assets.github.com/img/e6bef7a091f5f3138b8cd40bc3e114258dd68ddf/687474703a2f2f73332e616d617a6f6e6177732e636f6d2f6769746875622f726962626f6e732f666f726b6d655f72696768745f7265645f6161303030302e706e67" alt="Fork me on GitHub"></a>
|
|
</body>
|
|
</html>
|