1. 13 May, 2019 1 commit
  2. 09 Oct, 2012 1 commit
    • Stephen Kelly's avatar
      GenEx: Parse comma after colon tokens specially · b3d8f5da
      Stephen Kelly authored
      Otherwise the comma is treated as plain text by ParseContent.
      
      $<STREQUAL:,> should be valid and true.
      $<STREQUAL:,something> should be valid and false.
      
      $<STREQUAL:,,> should be non-valid as it is 3 parameters.
      $<STREQUAL:something,,> should be non-valid as it is 3 parameters.
      
      Additionally, this allows reporting the correct error for other
      expressions. For example $<TARGET_PROPERTY:,> should be invalid
      because it has an empty target and empty property. It shouldn't
      attempt to read the property ',' on the 'implicit this' target.
      b3d8f5da
  3. 18 Sep, 2012 1 commit
    • Stephen Kelly's avatar
      cmGeneratorExpression: Re-write for multi-stage evaluation · f1eacf0e
      Stephen Kelly authored
      The expressions may be parsed and then cached and evaluated multiple
      times.  They are evaluated lazily so that literals such as ',' can be
      treated as universal parameter separators, and can be processed from
      results without appearing literally, and without interfering with the
      parsing/evaluation of the entire expression.
      f1eacf0e
  4. 15 Aug, 2012 1 commit
    • Brad King's avatar
      Add boolean generator expressions · ebf05abd
      Brad King authored
      Add generator expressions that combine and use boolean test results:
      
       $<0:...>         = empty string (ignores "...")
       $<1:...>         = content of "..."
       $<AND:?[,?]...>  = '1' if all '?' are '1', else '0'
       $<OR:?[,?]...>   = '0' if all '?' are '0', else '1'
       $<NOT:?>         = '0' if '?' is '1', else '1'
      
      These will be useful to evaluate (future) boolean query expressions and
      condition content on the results.  Include tests and documentation.
      ebf05abd