code: public Result next(int inUnit) {
          int pos=pos_;
          if(pos<0) {
              return Result.NO_MATCH;
          }
          int length=remainingMatchLength_;  // Actual remaining match length minus 1.
          if(length>=0) {
              // Remaining part of a linear-match node.
              if(inUnit==chars_.charAt(pos++)) {
                  remainingMatchLength_=--length;
                  pos_=pos;
                  int node;
                  return (length<0 && (node=chars_.charAt(pos))>=kMinValueLead) ?
                          valueResults_[node>>15] : Result.NO_VALUE;
              } else {
                  stop();
                  return Result.NO_MATCH;
              }
          }
          return nextImpl(pos, inUnit);
      }
docs: Traverses the trie from the current state for this input char.
  @param inUnit Input char value. Values below 0 and above 0xffff will never match.
  @return The match/value Result.