Author: tchemit Date: 2008-01-12 19:25:23 +0000 (Sat, 12 Jan 2008) New Revision: 153 Modified: trunk/jaxx/src/java/jaxx/compiler/ScriptManager.java Log: am?\195?\169lioration code de scriptlet g?\195?\169n?\195?\169r?\195?\169 (suppression ; inutiles) Modified: trunk/jaxx/src/java/jaxx/compiler/ScriptManager.java =================================================================== --- trunk/jaxx/src/java/jaxx/compiler/ScriptManager.java 2008-01-12 19:23:55 UTC (rev 152) +++ trunk/jaxx/src/java/jaxx/compiler/ScriptManager.java 2008-01-12 19:25:23 UTC (rev 153) @@ -51,7 +51,8 @@ public String preprocessScript(String script) throws CompilerException { script = trimScript(script); StringBuffer result = new StringBuffer(); - JavaParser p = new JavaParser(new StringReader(script + ";")); + JavaParser p = new JavaParser(new StringReader(script)); + //JavaParser p = new JavaParser(new StringReader(script + ";")); while (!p.Line()) { SimpleNode node = p.popNode(); if (node != null) { @@ -111,7 +112,7 @@ FieldDescriptor[] fields = compiler.getScriptFields(); for (FieldDescriptor field : fields) { if (field.getName().equals(lhs)) { - lhs.substring(lhs.lastIndexOf(".") + 1); + //lhs.substring(lhs.lastIndexOf(".") + 1); node.firstToken.image = "jaxx.runtime.Util.assignment(" + node.firstToken.image; String outputClassName = compiler.getOutputClassName(); node.lastToken.image = node.lastToken.image + ", \"" + lhs + "\", " + outputClassName + ".this)"; @@ -181,7 +182,7 @@ } compiler.bodyCode.append(modifiers).append(" ").append(node.getText()); - compiler.bodyCode.append(";\n"); + //compiler.bodyCode.append(";\n"); } @@ -235,13 +236,13 @@ } } compiler.bodyCode.append(node.getText()); - compiler.bodyCode.append(";\n"); + //compiler.bodyCode.append(";\n"); compiler.addScriptMethod(new MethodDescriptor(name, Modifier.PUBLIC, returnType, parameterTypes.toArray(new String[parameterTypes.size()]), compiler.getClassLoader())); } else if (nodeType == JavaParserTreeConstants.JJTCLASSORINTERFACEDECLARATION || nodeType == JavaParserTreeConstants.JJTINITIALIZER) { compiler.bodyCode.append(node.getText()); - compiler.bodyCode.append(";\n"); + //compiler.bodyCode.append(";\n"); } else if (nodeType == JavaParserTreeConstants.JJTCONSTRUCTORDECLARATION) { processConstructor(node.getChild(0).getChild(0).getText(), node.getChild(0).getChild(1)); @@ -260,16 +261,19 @@ boolean isFinal = Arrays.asList(declarationTokens).contains("final"); boolean isStatic = Arrays.asList(declarationTokens).contains("static"); String name = declarationTokens[declarationTokens.length - 1]; - if (name.endsWith(";")) + if (name.endsWith(";")) { name = name.substring(0, name.length() - 1).trim(); + } String className = declarationTokens[declarationTokens.length - 2]; String type = TagManager.resolveClassName(className, compiler); compiler.addScriptField(new FieldDescriptor(name, Modifier.PUBLIC, type, compiler.getClassLoader())); // TODO: determine the actual modifiers if (equals != -1 && !isFinal && !isStatic) { // declare the field in the class body, but wait to actually initialize it + //compiler.bodyCode.append(text.substring(0, equals).trim()); compiler.bodyCode.append(text.substring(0, equals).trim()).append(";"); String initializer = text.substring(equals + 1).trim(); - if (type.endsWith("[]")) + if (type.endsWith("[]")) { initializer = "new " + type + " " + initializer; + } final String finalInitializer = name + " = " + initializer; compiler.registerInitializer(new Runnable() { public void run() { @@ -279,19 +283,21 @@ } else { compiler.bodyCode.append(text); } - compiler.bodyCode.append(";\n"); + compiler.bodyCode.append("\n"); + //compiler.bodyCode.append(";\n"); } else { String text = node.getText().trim(); if (text.length() > 0) { compiler.initializer.append(text); - compiler.initializer.append(";\n"); + //compiler.initializer.append(";\n"); } } } public void registerScript(String script) throws CompilerException { - JavaParser p = new JavaParser(new StringReader(script + ";")); + JavaParser p = new JavaParser(new StringReader(script)); + //JavaParser p = new JavaParser(new StringReader(script + ";")); while (!p.Line()) { SimpleNode node = p.popNode(); if (node != null) {