code: @Override
      public int propertyNameToCType(byte[]name, int p, int end) {
          byte[]buf = new byte[PROPERTY_NAME_MAX_SIZE];
          int len = 0;
  
          for(int p_ = p; p_ < end; p_+= length(name, p_, end)) {
              int code = mbcToCode(name, p_, end);
              if (code == ' ' || code == '-' || code == '_') continue;
              if (code >= 0x80) throw new CharacterPropertyException(EncodingError.ERR_INVALID_CHAR_PROPERTY_NAME, name, p, end);
              buf[len++] = (byte)code;
              if (len >= PROPERTY_NAME_MAX_SIZE) throw new CharacterPropertyException(EncodingError.ERR_INVALID_CHAR_PROPERTY_NAME, name, p, end);
          }
  
          Integer ctype = CTypeName.Values.get(buf, 0, len);
          if (ctype == null) throw new CharacterPropertyException(EncodingError.ERR_INVALID_CHAR_PROPERTY_NAME, name, p, end);
          return ctype;
      }
docs: onigenc_unicode_property_name_to_ctype