aboutsummaryrefslogtreecommitdiff
path: root/node_modules/sax/examples/example.js
diff options
context:
space:
mode:
authorFlorian Dold <florian.dold@gmail.com>2016-11-03 01:33:53 +0100
committerFlorian Dold <florian.dold@gmail.com>2016-11-03 01:33:53 +0100
commitd1291f67551c58168af43698a359cb5ddfd266b0 (patch)
tree55a13ed29fe1915e3f42f1b1b7038dafa2e975a7 /node_modules/sax/examples/example.js
parentd0a0695fb5d34996850723f7d4b1b59c3df909c2 (diff)
node_modules
Diffstat (limited to 'node_modules/sax/examples/example.js')
-rw-r--r--node_modules/sax/examples/example.js29
1 files changed, 29 insertions, 0 deletions
diff --git a/node_modules/sax/examples/example.js b/node_modules/sax/examples/example.js
new file mode 100644
index 000000000..7b0246e9a
--- /dev/null
+++ b/node_modules/sax/examples/example.js
@@ -0,0 +1,29 @@
+
+var fs = require("fs"),
+ util = require("util"),
+ path = require("path"),
+ xml = fs.readFileSync(path.join(__dirname, "test.xml"), "utf8"),
+ sax = require("../lib/sax"),
+ strict = sax.parser(true),
+ loose = sax.parser(false, {trim:true}),
+ inspector = function (ev) { return function (data) {
+ console.error("%s %s %j", this.line+":"+this.column, ev, data);
+ }};
+
+sax.EVENTS.forEach(function (ev) {
+ loose["on"+ev] = inspector(ev);
+});
+loose.onend = function () {
+ console.error("end");
+ console.error(loose);
+};
+
+// do this in random bits at a time to verify that it works.
+(function () {
+ if (xml) {
+ var c = Math.ceil(Math.random() * 1000)
+ loose.write(xml.substr(0,c));
+ xml = xml.substr(c);
+ process.nextTick(arguments.callee);
+ } else loose.close();
+})();