[Date Prev][Date Next][Thread Prev][Thread Next][Author Index][Date Index][Thread Index]

Re: formic enhancements



Formic now has three enhancements:

1) in CLASS name: & FUNC name: constructs a '+' at the END of a string
   is now a wildcard ('*' would be consistent w/ UNIX(tm) but I used
   '+' to avoid convusion w/ the C indirection operator.)  For example

    $(FOR CLASSES name: SP+)
      $(CLASS)
      $(IF CLASS name: SPT+) boo! $(FI) 
    $(FI)

   would output all and only names of classes beginning w/ 'SP' and
   say boo! after all beginning with 'SPT'.  This ONLY works for CLASS
   & FUNC but is easily extendable to other contexts if anyone needs it.

2) FUNC pseudo: is TRUE iff the return type of the function is a pointer
   to a type whose name differs from that of the function only in that
   the function name begins with a lowercase letter and the type name
    begins w/ an uppercase name.  For example

    * Bar bar();  TRUE
    * Bar Bar();  FALSE
    * Bar foo();  FALSE 

   This criterion doesn't find all any only possible pseudoconstructors
   but is should do as long as X++ naming conventions are being observed.

3) There is now a $(BREAK) ant.  It works in FOR clauses just like the C
   break - i.e. immediately exits the immediately enclosing loop
   (Michael requested this)


  No bet on these yet ... pre-enhanced Formic is in /usr/local/bin/formic.new-
  in case anything breaks.

  - Roland