Update of /cvsroot/webmacro/webmacro/src/org/webmacro/engine
In directory sc8-pr-cvs1:/tmp/cvs-serv5682/src/org/webmacro/engine
Modified Files:
MacroBuilder.java
Log Message:
Updates include:
RelaxedDirectiveBuilding Property.
Test Cases for above property.
assert() --> assertTrue() allowing compilation under java1.4
some additions/improvements to the standard macro library
all tests run without error under jdk 1.3, solaris 2.8.
some work needs to be done on test cases to remove unix dependencies.
Index: MacroBuilder.java
===================================================================
RCS file: /cvsroot/webmacro/webmacro/src/org/webmacro/engine/MacroBuilder.java,v
retrieving revision 1.4
retrieving revision 1.5
diff -C2 -d -r1.4 -r1.5
*** MacroBuilder.java 15 Dec 2002 10:22:36 -0000 1.4
--- MacroBuilder.java 23 Mar 2003 02:00:34 -0000 1.5
***************
*** 39,42 ****
--- 39,43 ----
private ListBuilder argsBuilder;
private int lineNo, colNo;
+ private String[] nullArgs = new String[0];
public MacroBuilder(String name,
***************
*** 54,59 ****
public Object build(BuildContext bc) throws BuildException {
MacroDefinition md = bc.getMacro(name);
! if (md == null)
throw new BuildException ("#" + name + ": no such Macro or Directive");
Object[] args = argsBuilder.buildAsArray(bc);
return md.expand(args, bc);
--- 55,65 ----
public Object build(BuildContext bc) throws BuildException {
MacroDefinition md = bc.getMacro(name);
! if (md == null) {
! boolean relax = bc.getBroker().getBooleanSetting("RelaxedDirectiveBuilding");
! if (relax)
! return "#" + name + " ";
! else
throw new BuildException ("#" + name + ": no such Macro or Directive");
+ }
Object[] args = argsBuilder.buildAsArray(bc);
return md.expand(args, bc);
|