function SymbolNode(name) {
    if (!(this instanceof SymbolNode)) {
      throw new SyntaxError('Constructor must be called with the new operator');
    } // validate input


    if (typeof name !== 'string') throw new TypeError('String expected for parameter "name"');
    this.name = name;
  }
@constructor SymbolNode
@extends {Node}
A symbol node can hold and resolve a symbol
@param {string} name
@extends {Node}