Rietveld Code Review Tool
Help | Bug tracker | Discussion group | Source code

Unified Diff: compiled/shell.js

Issue 29333474: Issue 4125 - [emscripten] Convert filter classes to C++ (Closed)
Patch Set: Call parameters in JS wrappers generated statically Created Jan. 28, 2016, 9:26 p.m.
Use n/p to move between diff chunks; N/P to move between comments.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « compiled/intrusive_ptr.h ('k') | lib/filterClasses.js » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: compiled/shell.js
===================================================================
new file mode 100644
--- /dev/null
+++ b/compiled/shell.js
@@ -0,0 +1,126 @@
+"Compiled from https://hg.adblockplus.org/adblockplus/ with Emscripten {{{EMSCRIPTEN_VERSION}}}";
+
+var sizeofString = 0;
+var FilterNotifier = require("filterNotifier").FilterNotifier;
+
+function copyString(str, buffer)
+{
+ var length = str.length;
+ for (var i = 0, pointer = (buffer >> 1); i < length; i++, pointer++)
+ HEAP16[pointer] = str.charCodeAt(i);
+ return length;
+}
+
+function createString(str)
+{
+ var length = 0;
+ var buffer = 0;
+ if (str)
+ {
+ buffer = Runtime.stackAlloc(str.length * 2);
+ length = copyString(str, buffer);
+ }
+
+ if (!sizeofString)
+ sizeofString = Module._GetSizeofString();
+ var result = Module.Runtime.stackAlloc(sizeofString);
+ Module._InitString(result, buffer, length);
+ return result;
+}
+
+function getStringData(str)
+{
+ var length = Module._GetStringLength(str);
+ var pointer = Module._GetStringData(str) >> 1;
+ return String.fromCharCode.apply(String, HEAP16.slice(pointer, pointer + length));
+}
+
+function createClass(superclass)
+{
+ var result = function(pointer)
+ {
+ this._pointer = pointer;
+ };
+ if (superclass)
+ result.prototype = Object.create(superclass.prototype);
+ result.prototype.delete = function()
+ {
+ Module._DeletePointer(this._pointer);
+ };
+ return result;
+}
+
+var regexps =
+{
+ _data: Object.create(null),
+ _counter: 0,
+
+ create: function(source, matchCase)
+ {
+ var id = ++this._counter;
+ try
+ {
+ this._data[id] = new RegExp(getStringData(source), matchCase ? "" : "i");
+ }
+ catch (e)
+ {
+ this._data[id] = String(e);
+ }
+ return id;
+ },
+
+ getErrorLength: function(id)
+ {
+ if (typeof this._data[id] == "string")
+ return this._data[id].length;
+ else
+ return -1;
+ },
+
+ getError: function(id, buffer)
+ {
+ if (typeof this._data[id] == "string")
+ {
+ copyString(this._data[id], buffer);
+ delete this._data[id];
+ }
+ },
+
+ delete: function(id)
+ {
+ delete this._data[id];
+ },
+
+ test: function(id, str)
+ {
+ return this._data[id].test(getStringData(str));
+ }
+};
+
+var Module =
+{
+ preRun: [],
+ postRun: [],
+ print: console.log.bind(console),
+ printErr: console.error.bind(console),
+
+ getMemoryLayout: function()
+ {
+ return {
+ 'static_base': STATIC_BASE,
+ 'static_top': STATICTOP,
+ 'stack_base': STACK_BASE,
+ 'stack_top': STACKTOP,
+ 'stack_max': STACK_MAX,
+ 'dynamic_base': DYNAMIC_BASE,
+ 'dynamic_top': DYNAMICTOP,
+ 'total_memory': TOTAL_MEMORY
+ };
+ }
+};
+var ENVIRONMENT_IS_WEB = false, ENVIRONMENT_IS_NODE = false,
+ ENVIRONMENT_IS_WORKER = false, ENVIRONMENT_IS_SHELL = true;
+
+{{BODY}}
+
+Object.assign(exports, Module);
« no previous file with comments | « compiled/intrusive_ptr.h ('k') | lib/filterClasses.js » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld