Skip to content
  • Mark OLESEN's avatar
    ENH: cleanup wordRe interfaces etc. · a8d2ebf2
    Mark OLESEN authored
    - ensure that the string-related classes have consistently similar
      matching methods. Use operator()(const std::string) as an entry
      point for the match() method, which makes it easier to use for
      filters and predicates. In some cases this will also permit using
      a HashSet as a match predicate.
    
    regExp
    ====
    - the set method now returns a bool to signal that the requested
      pattern was compiled.
    
    wordRe
    ====
    - have separate constructors with the compilation option (was previously
      a default parameter). This leaves the single parameter constructor
      explicit, but the two parameter version is now non-explicit, which
      makes it easier to use when building lists.
    
    - renamed compile-option from REGEX (to REGEXP) for consistency with
      with the <regex.h>, <regex> header names etc.
    
    wordRes
    ====
    - renamed from wordReListMatcher -> wordRes. For reduced typing and
      since it behaves as an entity only slightly related to its underlying
      list nature.
    
    - Provide old name as typedef and include for code transition.
    
    - pass through some list methods into wordRes
    
    hashedWordList
    ====
    - hashedWordList[const word& name] now returns a -1 if the name is is
      not found in the list of indices. That has been a pending change
      ever since hashedWordList was generalized out of speciesTable
      (Oct-2010).
    
    - add operator()(const word& name) for easy use as a predicate
    
    STYLE: adjust parameter names in stringListOps
    
    - reflect if the parameter is being used as a primary matcher, or the
      matcher will be derived from the parameter.
      For example,
          (const char* re), which first creates a regExp
          versus (const regExp& matcher) which is used directly.
    a8d2ebf2