CodeNode.js 674 B

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950
  1. import Node from './Node.js';
  2. class CodeNode extends Node {
  3. constructor( code = '', nodeType = 'code' ) {
  4. super( nodeType );
  5. this.code = code;
  6. this._includes = [];
  7. }
  8. setIncludes( includes ) {
  9. this._includes = includes;
  10. return this;
  11. }
  12. getIncludes( /*builder*/ ) {
  13. return this._includes;
  14. }
  15. generate( builder ) {
  16. const includes = this.getIncludes( builder );
  17. for ( const include of includes ) {
  18. include.build( builder );
  19. }
  20. const nodeCode = builder.getCodeFromNode( this, this.getNodeType( builder ) );
  21. nodeCode.code = this.code;
  22. return nodeCode.code;
  23. }
  24. }
  25. CodeNode.prototype.isCodeNode = true;
  26. export default CodeNode;