code: function getPathCharType (ch) {
    if (ch === undefined || ch === null) { return 'eof' }
  
    const code = ch.charCodeAt(0);
  
    switch (code) {
      case 0x5B: // [
      case 0x5D: // ]
      case 0x2E: // .
      case 0x22: // "
      case 0x27: // '
        return ch
  
      case 0x5F: // _
      case 0x24: // $
      case 0x2D: // -
        return 'ident'
  
      case 0x09: // Tab
      case 0x0A: // Newline
      case 0x0D: // Return
      case 0xA0:  // No-break space
      case 0xFEFF:  // Byte Order Mark
      case 0x2028:  // Line Separator
      case 0x2029:  // Paragraph Separator
        return 'ws'
    }
  
    return 'ident'
  }
docs: Determine the type of a character in a keypath.