Package com.google.caja.parser.js

Examples of com.google.caja.parser.js.MultiDeclaration


  private static Statement joinDeclarations(
      @Nullable Statement decl, Declaration d) {
    if (decl == null) { return d; }
    if (decl instanceof Declaration) {
      decl = new MultiDeclaration(
          FilePosition.UNKNOWN, Arrays.asList((Declaration) decl));
    }
    ((MultiDeclaration) decl).appendChild(d);
    return decl;
  }
View Full Code Here


        }
      }
    }
    if (!decls.isEmpty()) {
      Statement first = body.children().get(0);
      MultiDeclaration md;
      if (first instanceof MultiDeclaration) {
        md = (MultiDeclaration) first;
      } else if (first instanceof Declaration) {
        md = new MultiDeclaration(
            FilePosition.span(pos, first.getFilePosition()),
            Collections.singletonList((Declaration) first));
        body.replaceChild(md, first);
      } else if (decls.size() == 1) {
        body.insertBefore(decls.get(0), first);
        return;
      } else {
        md = new MultiDeclaration(pos, Collections.<Declaration>emptyList());
        body.insertBefore(md, first);
      }
      MutableParseTreeNode.Mutation mut = md.createMutation();
      Declaration firstDecl = md.children().get(0);
      for (Declaration decl : decls) {
        mut = mut.insertBefore(decl, firstDecl);
      }
      mut.execute();
    }
View Full Code Here

            ((MultiDeclaration) si).appendChild(d);
            return;
          } else if (si.getClass() == Declaration.class) {
            startStatements.set(
                i,
                new MultiDeclaration(
                    FilePosition.UNKNOWN, Arrays.asList((Declaration) si, d)));
            return;
          }
        }
        pos = i;
View Full Code Here

      }
      Statement decl;
      if (decls.size() == 1) {
        decl = decls.get(0);
      } else {
        decl = new MultiDeclaration(
            FilePosition.startOf(body.getFilePosition()), decls);
      }
      Statement declFollower = null;
      List<? extends Statement> bodyChildren = body.children();
      if (!bodyChildren.isEmpty()) { declFollower = bodyChildren.get(0); }
View Full Code Here

      }
      Statement decl;
      if (decls.size() == 1) {
        decl = decls.get(0);
      } else {
        decl = new MultiDeclaration(
            FilePosition.startOf(body.getFilePosition()), decls);
      }
      Statement declFollower = null;
      List<? extends Statement> bodyChildren = body.children();
      if (!bodyChildren.isEmpty()) { declFollower = bodyChildren.get(0); }
View Full Code Here

        }
      }
    }
    if (!decls.isEmpty()) {
      Statement first = body.children().get(0);
      MultiDeclaration md;
      if (first instanceof MultiDeclaration) {
        md = (MultiDeclaration) first;
      } else if (first instanceof Declaration) {
        md = new MultiDeclaration(
            FilePosition.span(pos, first.getFilePosition()),
            Collections.singletonList((Declaration) first));
        body.replaceChild(md, first);
      } else if (decls.size() == 1) {
        body.insertBefore(decls.get(0), first);
        return;
      } else {
        md = new MultiDeclaration(pos, Collections.<Declaration>emptyList());
        body.insertBefore(md, first);
      }
      MutableParseTreeNode.Mutation mut = md.createMutation();
      Declaration firstDecl = md.children().get(0);
      for (Declaration decl : decls) {
        mut = mut.insertBefore(decl, firstDecl);
      }
      mut.execute();
    }
View Full Code Here

  private static Statement optionalDeclarations(List<Declaration> decls) {
    switch (decls.size()) {
      case 0: return null;
      case 1: return decls.get(0);
      default: return new MultiDeclaration(FilePosition.UNKNOWN, decls);
    }
  }
View Full Code Here

            ((MultiDeclaration) si).appendChild(d);
            return;
          } else if (si.getClass() == Declaration.class) {
            startStatements.set(
                i,
                new MultiDeclaration(
                    FilePosition.UNKNOWN, Arrays.asList((Declaration) si, d)));
            return;
          }
        }
        pos = i;
View Full Code Here

  private static Statement joinDeclarations(
      @Nullable Statement decl, Declaration d) {
    if (decl == null) { return d; }
    if (decl instanceof Declaration) {
      decl = new MultiDeclaration(
          FilePosition.UNKNOWN, Arrays.asList((Declaration) decl));
    }
    ((MultiDeclaration) decl).appendChild(d);
    return decl;
  }
View Full Code Here

TOP

Related Classes of com.google.caja.parser.js.MultiDeclaration

Copyright © 2018 www.massapicom. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.