You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
21 lines
395 B
21 lines
395 B
1 month ago
|
var ometa = require('./ometa-node');
|
||
|
|
||
|
var createParser = function(grammar, parserCallback) {
|
||
|
var parser;
|
||
|
try {
|
||
|
parser = ometa(grammar);
|
||
|
parserCallback(null, {
|
||
|
parse: function(code, rule, callback) {
|
||
|
callback(null, parser(code, rule));
|
||
|
}
|
||
|
});
|
||
|
}
|
||
|
catch(err) {
|
||
|
parserCallback({
|
||
|
inner: err
|
||
|
});
|
||
|
}
|
||
|
};
|
||
|
|
||
|
module.exports.createParser = createParser;
|