get processedValue() {
    switch (this.type) {
      case NULL:
        return null;

      case NUMBER: {
        let value = this.value;
        if (value.charCodeAt(0) === 48) {  // 0
          switch (value.charCodeAt(1)) {
            case 66:  // B
            case 98:  // b
              return parseInt(this.value.slice(2), 2);
            case 79:  // O
            case 111:  // o
              return parseInt(this.value.slice(2), 8);
          }
        }
        return Number(this.value);
      }

      case STRING: {
        let parser = new StringParser(this.value);
        return parser.parse();
      }

      default:
        throw new Error('Not implemented');
    }
  }
The value this literal token represents. For example, for string literals
it is the value of the string and not the character sequence in the string
literal.
@type {Null|number|string}