docs: @Override
      public Status match(int cc)
      {
          if (expression[idx] == '*')
          {
              okStatus = Status.WillMatch;
              if (cc == expression[idx+1])
              {
                  idx++;
              }
              else
              {
                  return okStatus;
              }
          }
          if (expression[idx] == cc || expression[idx] == '?')
          {
              idx++;
              if (idx == expression.length)
              {
                  idx = 0;
                  okStatus = Status.Ok;
                  return Status.Match;
              }
              else
              {
                  return okStatus;
              }
          }
          else
          {
              idx = 0;
              okStatus = Status.Ok;
              return Status.Error;
          }
      }