@neo-one/smart-contract-compiler
Version:
NEO•ONE TypeScript smart contract compiler.
23 lines (21 loc) • 781 B
JavaScript
import { getTypeFromStructuredStorageType } from '../constants';
import { BuiltinType } from './types';
export class BuiltinInstanceMemberStructuredStorageProperty {
constructor(type, property) {
this.type = type;
this.property = property;
this.types = new Set([BuiltinType.InstanceMemberValue]);
}
emitValue(sb, node, options, visited = false) {
if (visited) {
sb.emitOp(node, 'DROP');
}
if (options.pushValue) {
sb.emitHelper(node, options, sb.helpers.createStructuredStorage({
type: getTypeFromStructuredStorageType(this.type),
prefix: this.property,
}));
}
}
}
//# sourceMappingURL=BuiltinInstanceMemberStructuredStorageProperty.js.map