-
Notifications
You must be signed in to change notification settings - Fork 1
/
Copy pathast-produce.js.html
100 lines (91 loc) · 3.18 KB
/
ast-produce.js.html
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
<!doctype html>
<html>
<head>
<meta name="generator" content="JSDoc 3.3.0-beta1">
<meta charset="utf-8">
<title>jetson 0.0.3 » Source: ast-produce.js</title>
<link rel="stylesheet" href="//brick.a.ssl.fastly.net/Karla:400,400i,700,700i" type="text/css">
<link rel="stylesheet" href="//brick.a.ssl.fastly.net/Noto+Serif:400,400i,700,700i" type="text/css">
<link rel="stylesheet" href="//brick.a.ssl.fastly.net/Inconsolata:500" type="text/css">
<link href="css/baseline.css" rel="stylesheet">
</head>
<body onload="prettyPrint()">
<nav id="jsdoc-navbar" role="navigation" class="jsdoc-navbar">
<div id="jsdoc-navbar-container">
<div id="jsdoc-navbar-content">
<a href="index.html" class="jsdoc-navbar-package-name">jetson 0.<wbr>0.<wbr>3</a>
</div>
</div>
</nav>
<div id="jsdoc-body-container">
<div id="jsdoc-content">
<div id="jsdoc-content-container">
<div id="jsdoc-banner" role="banner">
</div>
<div id="jsdoc-main" role="main">
<header class="page-header">
<h1>Source: ast-produce.js</h1>
</header>
<article>
<pre class="prettyprint linenums"><code>"use strict";
var _interopRequire = function (obj) { return obj &amp;&amp; obj.__esModule ? obj["default"] : obj; };
var nodes = _interopRequire(require("./nodes"));
/**
* Takes in an array of nodes and applies methods onto them
*/
function ASTProduce(formatNodes) {
this.formatNodes = formatNodes;
}
module.exports = ASTProduce;
ASTProduce.prototype.produce = function () {
var nodeOutput;
var output = [];
while (nodeOutput = this.formatNodes.shift()) {
switch (nodeOutput.type) {
case "start":
if ("tokenStart" in nodeOutput) {
output.push(String.fromCharCode(nodeOutput.tokenStart));
}
break;
case "end":
if ("tokenEnd" in nodeOutput) {
output.push(String.fromCharCode(nodeOutput.tokenEnd));
}
break;
case "whole":
switch (nodeOutput.nodeType) {
case "string":
output.push("\"" + nodeOutput.value + "\"");
break;
default:
if ("tokenWhole" in nodeOutput) {
output.push(String.fromCharCode(nodeOutput.tokenWhole));
}
break;
}
}
}
return output.join("");
};</code></pre>
</article>
</div>
</div>
<nav id="jsdoc-toc-nav" role="navigation"></nav>
</div>
</div>
<footer id="jsdoc-footer" class="jsdoc-footer">
<div id="jsdoc-footer-container">
<p>
Generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc</a> 3.3.0-beta1 on February 14, 2015.
</p>
</div>
</footer>
<script src="scripts/jquery.min.js"></script>
<script src="scripts/jquery.cookie.js"></script>
<script src="scripts/tree.jquery.js"></script>
<script src="scripts/prettify.js"></script>
<script src="scripts/jsdoc-toc.js"></script>
<script src="scripts/linenumber.js"></script>
<script src="scripts/scrollanchor.js"></script>
</body>
</html>