@neo-one/smart-contract-compiler
Version:
NEO•ONE TypeScript smart contract compiler.
28 lines (26 loc) • 3.72 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
const BuiltinInterface_1 = require("../BuiltinInterface");
const BuiltinValueObject_1 = require("../BuiltinValueObject");
const for_1 = require("./for");
const iterator_1 = require("./iterator");
const toPrimitive_1 = require("./toPrimitive");
class SymbolInterface extends BuiltinInterface_1.BuiltinInterface {
}
class SymbolValue extends BuiltinValueObject_1.BuiltinValueObject {
constructor() {
super(...arguments);
this.type = 'SymbolConstructor';
}
}
class SymbolConstructorInterface extends BuiltinInterface_1.BuiltinInterface {
}
exports.add = (builtins) => {
builtins.addInterface('Symbol', new SymbolInterface());
builtins.addValue('Symbol', new SymbolValue());
builtins.addInterface('SymbolConstructor', new SymbolConstructorInterface());
builtins.addGlobalMember('SymbolConstructor', 'for', new for_1.SymbolFor());
builtins.addGlobalMember('SymbolConstructor', 'iterator', new iterator_1.SymbolIterator());
builtins.addGlobalMember('SymbolConstructor', 'toPrimitive', new toPrimitive_1.SymbolToPrimitive());
};
//# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImluZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7O0FBQUEsMERBQXVEO0FBRXZELDhEQUEyRDtBQUMzRCwrQkFBa0M7QUFDbEMseUNBQTRDO0FBQzVDLCtDQUFrRDtBQUVsRCxNQUFNLGVBQWdCLFNBQVEsbUNBQWdCO0NBQUc7QUFDakQsTUFBTSxXQUFZLFNBQVEsdUNBQWtCO0lBQTVDOztRQUNrQixTQUFJLEdBQUcsbUJBQW1CLENBQUM7SUFDN0MsQ0FBQztDQUFBO0FBQ0QsTUFBTSwwQkFBMkIsU0FBUSxtQ0FBZ0I7Q0FBRztBQUcvQyxRQUFBLEdBQUcsR0FBRyxDQUFDLFFBQWtCLEVBQVEsRUFBRTtJQUM5QyxRQUFRLENBQUMsWUFBWSxDQUFDLFFBQVEsRUFBRSxJQUFJLGVBQWUsRUFBRSxDQUFDLENBQUM7SUFDdkQsUUFBUSxDQUFDLFFBQVEsQ0FBQyxRQUFRLEVBQUUsSUFBSSxXQUFXLEVBQUUsQ0FBQyxDQUFDO0lBQy9DLFFBQVEsQ0FBQyxZQUFZLENBQUMsbUJBQW1CLEVBQUUsSUFBSSwwQkFBMEIsRUFBRSxDQUFDLENBQUM7SUFDN0UsUUFBUSxDQUFDLGVBQWUsQ0FBQyxtQkFBbUIsRUFBRSxLQUFLLEVBQUUsSUFBSSxlQUFTLEVBQUUsQ0FBQyxDQUFDO0lBQ3RFLFFBQVEsQ0FBQyxlQUFlLENBQUMsbUJBQW1CLEVBQUUsVUFBVSxFQUFFLElBQUkseUJBQWMsRUFBRSxDQUFDLENBQUM7SUFDaEYsUUFBUSxDQUFDLGVBQWUsQ0FBQyxtQkFBbUIsRUFBRSxhQUFhLEVBQUUsSUFBSSwrQkFBaUIsRUFBRSxDQUFDLENBQUM7QUFDeEYsQ0FBQyxDQUFDIiwiZmlsZSI6Im5lby1vbmUtc21hcnQtY29udHJhY3QtY29tcGlsZXIvc3JjL2NvbXBpbGUvYnVpbHRpbnMvc3ltYm9sL2luZGV4LmpzIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQnVpbHRpbkludGVyZmFjZSB9IGZyb20gJy4uL0J1aWx0aW5JbnRlcmZhY2UnO1xuaW1wb3J0IHsgQnVpbHRpbnMgfSBmcm9tICcuLi9CdWlsdGlucyc7XG5pbXBvcnQgeyBCdWlsdGluVmFsdWVPYmplY3QgfSBmcm9tICcuLi9CdWlsdGluVmFsdWVPYmplY3QnO1xuaW1wb3J0IHsgU3ltYm9sRm9yIH0gZnJvbSAnLi9mb3InO1xuaW1wb3J0IHsgU3ltYm9sSXRlcmF0b3IgfSBmcm9tICcuL2l0ZXJhdG9yJztcbmltcG9ydCB7IFN5bWJvbFRvUHJpbWl0aXZlIH0gZnJvbSAnLi90b1ByaW1pdGl2ZSc7XG5cbmNsYXNzIFN5bWJvbEludGVyZmFjZSBleHRlbmRzIEJ1aWx0aW5JbnRlcmZhY2Uge31cbmNsYXNzIFN5bWJvbFZhbHVlIGV4dGVuZHMgQnVpbHRpblZhbHVlT2JqZWN0IHtcbiAgcHVibGljIHJlYWRvbmx5IHR5cGUgPSAnU3ltYm9sQ29uc3RydWN0b3InO1xufVxuY2xhc3MgU3ltYm9sQ29uc3RydWN0b3JJbnRlcmZhY2UgZXh0ZW5kcyBCdWlsdGluSW50ZXJmYWNlIHt9XG5cbi8vIHRzbGludDpkaXNhYmxlLW5leHQtbGluZSBleHBvcnQtbmFtZVxuZXhwb3J0IGNvbnN0IGFkZCA9IChidWlsdGluczogQnVpbHRpbnMpOiB2b2lkID0+IHtcbiAgYnVpbHRpbnMuYWRkSW50ZXJmYWNlKCdTeW1ib2wnLCBuZXcgU3ltYm9sSW50ZXJmYWNlKCkpO1xuICBidWlsdGlucy5hZGRWYWx1ZSgnU3ltYm9sJywgbmV3IFN5bWJvbFZhbHVlKCkpO1xuICBidWlsdGlucy5hZGRJbnRlcmZhY2UoJ1N5bWJvbENvbnN0cnVjdG9yJywgbmV3IFN5bWJvbENvbnN0cnVjdG9ySW50ZXJmYWNlKCkpO1xuICBidWlsdGlucy5hZGRHbG9iYWxNZW1iZXIoJ1N5bWJvbENvbnN0cnVjdG9yJywgJ2ZvcicsIG5ldyBTeW1ib2xGb3IoKSk7XG4gIGJ1aWx0aW5zLmFkZEdsb2JhbE1lbWJlcignU3ltYm9sQ29uc3RydWN0b3InLCAnaXRlcmF0b3InLCBuZXcgU3ltYm9sSXRlcmF0b3IoKSk7XG4gIGJ1aWx0aW5zLmFkZEdsb2JhbE1lbWJlcignU3ltYm9sQ29uc3RydWN0b3InLCAndG9QcmltaXRpdmUnLCBuZXcgU3ltYm9sVG9QcmltaXRpdmUoKSk7XG59O1xuIl19