UNPKG

@glimmer/compiler

Version:
33 lines (28 loc) 3.79 kB
import { generateSyntaxError } from '@glimmer/syntax'; import { Err, Ok } from '../../../../shared/result'; import * as mir from '../../../2-encoding/mir'; import { VISIT_EXPRS } from '../../visitors/expressions'; function assertLogKeyword(node) { var _node$args = node.args, named = _node$args.named, positional = _node$args.positional; if (named && !named.isEmpty()) { return Err(generateSyntaxError("(log) does not take any named arguments", node.loc)); } return Ok(positional); } function translateLogKeyword(_ref, positional) { var node = _ref.node, state = _ref.state; return VISIT_EXPRS.Positional(positional, state).mapOk(function (positional) { return new mir.Log({ positional: positional, loc: node.loc }); }); } export var logKeyword = { assert: assertLogKeyword, translate: translateLogKeyword }; //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL0BnbGltbWVyL2NvbXBpbGVyL2xpYi9wYXNzZXMvMS1ub3JtYWxpemF0aW9uL2tleXdvcmRzL3V0aWxzL2xvZy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxTQUFBLG1CQUFBLFFBQUEsaUJBQUE7QUFFQSxTQUFBLEdBQUEsRUFBQSxFQUFBLFFBQUEsMkJBQUE7QUFDQSxPQUFPLEtBQVAsR0FBQSxNQUFBLHlCQUFBO0FBRUEsU0FBQSxXQUFBLFFBQUEsNEJBQUE7O0FBR0EsU0FBQSxnQkFBQSxDQUFBLElBQUEsRUFBa0Q7QUFBQSxtQkFDaEQsSUFEZ0QsQ0FFOUMsSUFGOEM7QUFBQSxNQUV4QyxLQUZ3QyxjQUV4QyxLQUZ3QztBQUFBLE1BRS9CLFVBRitCLGNBRS9CLFVBRitCOztBQUtoRCxNQUFJLEtBQUssSUFBSSxDQUFDLEtBQUssQ0FBbkIsT0FBYyxFQUFkLEVBQStCO0FBQzdCLFdBQU8sR0FBRyxDQUFDLG1CQUFtQiw0Q0FBNEMsSUFBSSxDQUE5RSxHQUE4QixDQUFwQixDQUFWO0FBQ0Q7O0FBRUQsU0FBTyxFQUFFLENBQVQsVUFBUyxDQUFUO0FBQ0Q7O0FBRUQsU0FBQSxtQkFBQSxPQUFBLFVBQUEsRUFFdUM7QUFBQSxNQURyQyxJQUNxQyxRQURyQyxJQUNxQztBQUFBLE1BRDdCLEtBQzZCLFFBRDdCLEtBQzZCO0FBRXJDLFNBQU8sV0FBVyxDQUFYLFVBQUEsQ0FBQSxVQUFBLEVBQUEsS0FBQSxFQUFBLEtBQUEsQ0FDSixVQUFBLFVBQUQ7QUFBQSxXQUFnQixJQUFJLEdBQUcsQ0FBUCxHQUFBLENBQVk7QUFBRSxNQUFBLFVBQUYsRUFBRSxVQUFGO0FBQWMsTUFBQSxHQUFHLEVBQUUsSUFBSSxDQUFDO0FBQXhCLEtBQVosQ0FBaEI7QUFBQSxHQURLLENBQVA7QUFHRDs7QUFFRCxPQUFPLElBQU0sVUFBVSxHQUluQjtBQUNGLEVBQUEsTUFBTSxFQURKLGdCQUFBO0FBRUYsRUFBQSxTQUFTLEVBQUU7QUFGVCxDQUpHIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQVNUdjIsIGdlbmVyYXRlU3ludGF4RXJyb3IgfSBmcm9tICdAZ2xpbW1lci9zeW50YXgnO1xuXG5pbXBvcnQgeyBFcnIsIE9rLCBSZXN1bHQgfSBmcm9tICcuLi8uLi8uLi8uLi9zaGFyZWQvcmVzdWx0JztcbmltcG9ydCAqIGFzIG1pciBmcm9tICcuLi8uLi8uLi8yLWVuY29kaW5nL21pcic7XG5pbXBvcnQgeyBOb3JtYWxpemF0aW9uU3RhdGUgfSBmcm9tICcuLi8uLi9jb250ZXh0JztcbmltcG9ydCB7IFZJU0lUX0VYUFJTIH0gZnJvbSAnLi4vLi4vdmlzaXRvcnMvZXhwcmVzc2lvbnMnO1xuaW1wb3J0IHsgR2VuZXJpY0tleXdvcmROb2RlLCBLZXl3b3JkRGVsZWdhdGUgfSBmcm9tICcuLi9pbXBsJztcblxuZnVuY3Rpb24gYXNzZXJ0TG9nS2V5d29yZChub2RlOiBHZW5lcmljS2V5d29yZE5vZGUpOiBSZXN1bHQ8QVNUdjIuUG9zaXRpb25hbEFyZ3VtZW50cz4ge1xuICBsZXQge1xuICAgIGFyZ3M6IHsgbmFtZWQsIHBvc2l0aW9uYWwgfSxcbiAgfSA9IG5vZGU7XG5cbiAgaWYgKG5hbWVkICYmICFuYW1lZC5pc0VtcHR5KCkpIHtcbiAgICByZXR1cm4gRXJyKGdlbmVyYXRlU3ludGF4RXJyb3IoYChsb2cpIGRvZXMgbm90IHRha2UgYW55IG5hbWVkIGFyZ3VtZW50c2AsIG5vZGUubG9jKSk7XG4gIH1cblxuICByZXR1cm4gT2socG9zaXRpb25hbCk7XG59XG5cbmZ1bmN0aW9uIHRyYW5zbGF0ZUxvZ0tleXdvcmQoXG4gIHsgbm9kZSwgc3RhdGUgfTogeyBub2RlOiBBU1R2Mi5DYWxsRXhwcmVzc2lvbjsgc3RhdGU6IE5vcm1hbGl6YXRpb25TdGF0ZSB9LFxuICBwb3NpdGlvbmFsOiBBU1R2Mi5Qb3NpdGlvbmFsQXJndW1lbnRzXG4pOiBSZXN1bHQ8bWlyLkxvZz4ge1xuICByZXR1cm4gVklTSVRfRVhQUlMuUG9zaXRpb25hbChwb3NpdGlvbmFsLCBzdGF0ZSkubWFwT2soXG4gICAgKHBvc2l0aW9uYWwpID0+IG5ldyBtaXIuTG9nKHsgcG9zaXRpb25hbCwgbG9jOiBub2RlLmxvYyB9KVxuICApO1xufVxuXG5leHBvcnQgY29uc3QgbG9nS2V5d29yZDogS2V5d29yZERlbGVnYXRlPFxuICBBU1R2Mi5DYWxsRXhwcmVzc2lvbiB8IEFTVHYyLkFwcGVuZENvbnRlbnQsXG4gIEFTVHYyLlBvc2l0aW9uYWxBcmd1bWVudHMsXG4gIG1pci5Mb2dcbj4gPSB7XG4gIGFzc2VydDogYXNzZXJ0TG9nS2V5d29yZCxcbiAgdHJhbnNsYXRlOiB0cmFuc2xhdGVMb2dLZXl3b3JkLFxufTtcbiJdLCJzb3VyY2VSb290IjoiIn0=