On Thu, Aug 28, 2008 at 6:57 AM, Mike Stay <[EMAIL PROTECTED]> wrote:

> Please also add the following to CommonJsRewriterTest.java:
>    assertConsistent("for (var i = 0, j = 0; i < 10; i++, j += 10) { } j;
> to test comma expressions in the final position.
>
> Otherwise lgtm.
>
>
> On Wed, Aug 27, 2008 at 5:14 PM,  <[EMAIL PROTECTED]> wrote:
> > I'd like you to do a code review.  To review this change, run
> >
> >  gvn review --project 
> > https://google-caja.googlecode.com/svn/trunkihab/[EMAIL PROTECTED]
> >
> > Alternatively, to review the latest snapshot of this change
> > branch, run
> >
> >  gvn --project https://google-caja.googlecode.com/svn/trunk review
> ihab/cajamodemultidecl
> >
> > to review the following change:
> >
> > *ihab/[EMAIL PROTECTED] | ihab | 2008-08-27 16:12:05 -0800 (Wed, 27
> Aug 2008)
> >
> > Description:
> >
> > Add "-a, --caja" command line flag and remove "warts mode" flag. Fix bug
> in
> > handling of multi-declarations in for loops.
> >
> >
> >
> > Affected Paths:
> >   M //trunk/src/com/google/caja/opensocial/GadgetRewriterMain.java
> >   M
> //trunk/src/com/google/caja/parser/quasiliteral/DefaultValijaRewriter.java
> >   M //trunk/src/com/google/caja/plugin/Config.java
> >   M //trunk/src/com/google/caja/plugin/PluginCompilerMain.java
> >   M
> //trunk/tests/com/google/caja/parser/quasiliteral/CommonJsRewriterTest.java
> >   M
> //trunk/tests/com/google/caja/parser/quasiliteral/DefaultValijaRewriterTest.java
> >
> >
> > This is a semiautomated message from "gvn mail".  See
> > <http://code.google.com/p/gvn/> to learn more.
> >
> > Index: src/com/google/caja/opensocial/GadgetRewriterMain.java
> > ===================================================================
> > --- src/com/google/caja/opensocial/GadgetRewriterMain.java
>  (//trunk/src/com/google/caja/opensocial/[EMAIL PROTECTED])
> > +++ src/com/google/caja/opensocial/GadgetRewriterMain.java
>  
> (//changes/ihab/cajamodemultidecl/trunk/src/com/google/caja/opensocial/[EMAIL 
> PROTECTED]
> )
> > @@ -71,6 +71,7 @@
> >     rewriter.setCssSchema(config.getCssSchema(mq));
> >     rewriter.setHtmlSchema(config.getHtmlSchema(mq));
> >     rewriter.setDebugMode(config.debugMode());
> > +    rewriter.setValijaMode(config.cajaMode());
> >
> >     Writer w = new BufferedWriter(new
> FileWriter(config.getOutputBase()));
> >     try {
> > Index: src/com/google/caja/parser/quasiliteral/DefaultValijaRewriter.java
> > ===================================================================
> > --- src/com/google/caja/parser/quasiliteral/DefaultValijaRewriter.java
>
>  (//trunk/src/com/google/caja/parser/quasiliteral/[EMAIL PROTECTED]
> )
> > +++ src/com/google/caja/parser/quasiliteral/DefaultValijaRewriter.java
>
>  
> (//changes/ihab/cajamodemultidecl/trunk/src/com/google/caja/parser/quasiliteral/[EMAIL
>  PROTECTED]
> )
> > @@ -1228,15 +1228,18 @@
> >       @Override
> >       @RuleDescription(
> >           name="multiDeclaration",
> > -          synopsis="Convert a MultiDeclaration into a Block of
> initializer exprs",
> > +          synopsis="Convert a MultiDeclaration into a comma expression",
> >           reason="")
> >       public ParseTreeNode fire(ParseTreeNode node, Scope scope,
> MessageQueue mq) {
> >         if (node instanceof MultiDeclaration) {
> > -          ParseTreeNodeContainer children =
> > -              new ParseTreeNodeContainer(node.children());
> > -          return substV(
> > -              "{ @init*; }",
> > -              "init", expandAll(children, scope, mq));
> > +          Expression[] newChildren = new
> Expression[node.children().size()];
> > +          for (int i = 0; i < newChildren.length; i++) {
> > +            ExpressionStmt result = (ExpressionStmt)
> > +                expand(node.children().get(i), scope, mq);
> > +            newChildren[i] = result.getExpression();
> > +          }
> > +          return new ExpressionStmt(
> > +              Operation.create(Operator.COMMA, newChildren));
> >         }
> >         return NONE;
> >       }
> > Index: src/com/google/caja/plugin/Config.java
> > ===================================================================
> > --- src/com/google/caja/plugin/Config.java
>  (//trunk/src/com/google/caja/plugin/[EMAIL PROTECTED])
> > +++ src/com/google/caja/plugin/Config.java
>  (//changes/ihab/cajamodemultidecl/trunk/src/com/google/caja/plugin/[EMAIL 
> PROTECTED]
> )
> > @@ -98,8 +98,8 @@
> >   private final Option DEBUG_MODE = defineBooleanOption(
> >       "g", "debug", "Set to add debugging info to cajoled output.");
> >
> > -  private final Option WARTS_MODE = defineBooleanOption(
> > -      "w", "warts", "Enables more lenient cajoling via 'warts'
> features.");
> > +  private final Option CAJA_MODE = defineBooleanOption(
> > +      "a", "caja", "Enables Caja (as opposed to Cajita) mode.");
> >
> >   private final Class<?> mainClass;
> >   private final PrintWriter stderr;
> > @@ -113,7 +113,7 @@
> >   private URI baseUri;
> >   private String gadgetView;
> >   private boolean debugMode;
> > -  private boolean wartsMode;
> > +  private boolean cajaMode;
> >   private int servicePort;
> >
> >   public Config(Class<?> mainClass, PrintStream stderr, String usageText)
> {
> > @@ -158,7 +158,7 @@
> >
> >   public boolean debugMode() { return debugMode; }
> >
> > -  public boolean wartsMode() { return wartsMode; }
> > +  public boolean cajaMode() { return cajaMode; }
> >
> >   public boolean processArguments(String[] argv) {
> >     try {
> > @@ -250,7 +250,7 @@
> >
> >       gadgetView = cl.getOptionValue(VIEW.getOpt(), "canvas");
> >       debugMode = cl.hasOption(DEBUG_MODE.getOpt());
> > -      wartsMode = cl.hasOption(WARTS_MODE.getOpt());
> > +      cajaMode = cl.hasOption(CAJA_MODE.getOpt());
> >
> >       String servicePortString;
> >       try {
> > Index: src/com/google/caja/plugin/PluginCompilerMain.java
> > ===================================================================
> > --- src/com/google/caja/plugin/PluginCompilerMain.java
>  (//trunk/src/com/google/caja/plugin/[EMAIL PROTECTED])
> > +++ src/com/google/caja/plugin/PluginCompilerMain.java
>  (//changes/ihab/cajamodemultidecl/trunk/src/com/google/caja/plugin/[EMAIL 
> PROTECTED]
> )
> > @@ -83,7 +83,8 @@
> >     try {
> >       PluginMeta meta = new PluginMeta(makeEnvironment(config));
> >       meta.setDebugMode(config.debugMode());
> > -      meta.setWartsMode(config.wartsMode());
> > +      meta.setWartsMode(false);
> > +      meta.setValijaMode(config.cajaMode());
> >       PluginCompiler compiler = new PluginCompiler(meta, mq);
> >       mc = compiler.getMessageContext();
> >       compiler.setCssSchema(config.getCssSchema(mq));
> > Index:
> tests/com/google/caja/parser/quasiliteral/CommonJsRewriterTest.java
> > ===================================================================
> > --- tests/com/google/caja/parser/quasiliteral/CommonJsRewriterTest.java
>
>  (//trunk/tests/com/google/caja/parser/quasiliteral/[EMAIL PROTECTED]
> )
> > +++ tests/com/google/caja/parser/quasiliteral/CommonJsRewriterTest.java
>
>  
> (//changes/ihab/cajamodemultidecl/trunk/tests/com/google/caja/parser/quasiliteral/[EMAIL
>  PROTECTED]
> )
> > @@ -220,6 +220,12 @@
> >         "    (['test', 'x_', 'y']).toSource());");
> >     }
> >   }
> > +
> > +  public void testFor() throws Exception{
> > +    assertConsistent("var i; for (i = 0; i < 10; i++) {} i;");
> > +    assertConsistent("for (var i = 0; i < 10; i++) {} i;");
> > +    assertConsistent("for (var i = 0, j = 0; i < 10; i++) { j += 10; }
> j;");
> > +  }
> >  }
> >
> >
> > Index:
> tests/com/google/caja/parser/quasiliteral/DefaultValijaRewriterTest.java
> > ===================================================================
> > ---
> tests/com/google/caja/parser/quasiliteral/DefaultValijaRewriterTest.java
>  (//trunk/tests/com/google/caja/parser/quasiliteral/[EMAIL PROTECTED]
> )
> > +++
> tests/com/google/caja/parser/quasiliteral/DefaultValijaRewriterTest.java
>  
> (//changes/ihab/cajamodemultidecl/trunk/tests/com/google/caja/parser/quasiliteral/[EMAIL
>  PROTECTED]
> )
> > @@ -65,10 +65,6 @@
> >   public void testObject() throws Exception {
> >     assertConsistent("({x:1,y:2}).toString();");
> >   }
> > -  public void testFor() throws Exception {
> > -    assertConsistent("for (i=0; i<10; i++) {} i;");
> > -    assertConsistent("for (var i=0; i<10; i++) {} i;");
> > -  }
> >   public void testUnderscore() throws Exception {
> >     // TODO: enable this behavior
> >     // assertConsistent("var x_=1; x_;");
> > @@ -152,10 +148,6 @@
> >         + "assertEquals(3, x);");
> >   }
> >
> > -  public void testTestToSource() throws Exception {
> > -    testToSource();
> > -  }
> > -
> >   @Override
> >   protected Object executePlain(String caja) throws IOException,
> ParseException {
> >     mq.getMessages().clear();
> >
> >
>
>
>
> --
> Mike Stay - [EMAIL PROTECTED]
> http://math.ucr.edu/~mike <http://math.ucr.edu/%7Emike>
> http://reperiendi.wordpress.com
>

--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to 
http://groups.google.com/group/google-caja-discuss
To unsubscribe, email [EMAIL PROTECTED]
-~----------~----~----~----~------~----~------~--~---

Reply via email to