Package org.openquark.cal.internal.javamodel.JavaExpression

Examples of org.openquark.cal.internal.javamodel.JavaExpression.Assignment


                            LocalVariableDeclaration lvd = new LocalVariableDeclaration(new LocalVariable(fixedUpVarName, javaDefn.getArgumentTypeName(argIndex)), evaluate);
                            block.addStatement(lvd);
                        } else {
                            JavaExpression.Nameable argVar = new LocalName(fixedUpVarName, JavaTypeNames.RTVALUE);
                            JavaExpression evaluate = SCJavaDefn.createInvocation(argVar, SCJavaDefn.EVALUATE, SCJavaDefn.EXECUTION_CONTEXT_VAR);
                            Assignment assign = new Assignment(argVar, evaluate);
                            block.addStatement(new ExpressionStatement (assign));
                        }
                    }
                }
            }
View Full Code Here


            //so that clearing it doesn't actually free any memory. However, not clearing it means that the the method
            //debug_getNodeStartText works as desired even in the case when result == null and clearMembers() has been called.
            //clearMembers.addStatement(new ExpressionStatement(new Assignment(functionField, LiteralWrapper.NULL)));
            for (int i = 0; i < functionArgumentMemberFields.length; ++i) {
                if (!mf.getParameterStrictness()[i] || !SCJavaDefn.canTypeBeUnboxed(mf.getParameterTypes()[i])) {
                    Assignment a = new Assignment(functionArgumentMemberFields[i], LiteralWrapper.NULL);
                    clearMembers.addStatement(new ExpressionStatement(a));
                }
            }
            strictAppClassRep.addMethod (clearMembers);
View Full Code Here

         */
        private JavaExpression callLastRef(JavaExpression keep, JavaExpression.Nameable nullOut) {
            return new MethodInvocation.Static(
                    JavaTypeNames.RTVALUE,
                    "lastRef",
                    new JavaExpression[]{keep, new Assignment(nullOut, LiteralWrapper.NULL)},
                    TWO_RTVALUES,
                    JavaTypeNames.RTVALUE);
        }
View Full Code Here

                            argCheck,
                            new MethodInvocation.Instance(null, "badConsArgMsg", JavaTypeName.STRING, MethodInvocation.InvocationType.VIRTUAL),
                            JavaTypeName.STRING));

            // Assign the argument values to the class fields.
            javaConstructor.addStatement(new ExpressionStatement(new Assignment(functionField, new MethodVariable(argNames[0]))));
            for (int i = 1; i < argNames.length; i++) {
                JavaField field = functionArgumentMemberFields[i-1];
                Assignment memberAssignment = new Assignment(field, new MethodVariable(argNames[i]));
                javaConstructor.addStatement(new ExpressionStatement(memberAssignment));

            }

            return javaConstructor;
View Full Code Here

            //the line "function = null;" should not be added to clearMembers. function is a reference to a singleton
            //so that clearing it doesn't actually free any memory. However, not clearing it means that the the method
            //debug_getNodeStartText works as desired even in the case when result == null and clearMembers() has been called.
            //clearMembers.addStatement(new ExpressionStatement(new Assignment(functionField, LiteralWrapper.NULL)));
            for (int i = 0; i < functionArgumentMemberFields.length; ++i) {
                Assignment a = new Assignment(functionArgumentMemberFields[i], LiteralWrapper.NULL);
                clearMembers.addStatement(new ExpressionStatement(a));
            }
            lazyAppClassRep.addMethod (clearMembers);

            createAppClass_debugMethods(lazyAppClassRep, functionArgumentMemberFields);
View Full Code Here

                    new AssertStatement(argCheck,
                                        new MethodInvocation.Instance(null, "badConsArgMsg", JavaTypeName.STRING, MethodInvocation.InvocationType.VIRTUAL),
                                        JavaTypeName.STRING));

            // Assign the constructor arguments to the class fields.
            javaConstructor.addStatement(new ExpressionStatement(new Assignment(functionField, argVars[0])));
            for (int i = 1; i < argNames.length; i++) {
                JavaField field = functionArgumentMemberFields[i-1];
                Assignment memberAssignment = new Assignment(field, argVars[i]);
                javaConstructor.addStatement(new ExpressionStatement(memberAssignment));
            }

            return javaConstructor;
        }
View Full Code Here

                    continue;
                }

                JavaField field = new JavaField.Instance(null, javaFieldNames[i], JavaTypeNames.RTVALUE);

                Assignment memberAssignment = new Assignment(field, argVars[i]);
                javaConstructor.addStatement(new ExpressionStatement(memberAssignment));
            }

            // Add the statistics block.
            addStatsBlock(javaConstructor);
View Full Code Here

                    fieldType = SCJavaDefn.typeExprToTypeName(fieldTypes[i]);
                }

                JavaField field = new JavaField.Instance(null, javaFieldNames[i], fieldType);

                Assignment memberAssignment = new Assignment(field, argVars[i]);
                javaConstructor.addStatement(new ExpressionStatement(memberAssignment));
            }

            // Add the statistics block.
            addStatsBlock(javaConstructor);
View Full Code Here

                            //RTValue $currentRootNode;
                            javaMethod.addStatement(new LocalVariableDeclaration(LOCALVAR_CURRENT_ROOT_NODE));
                            //($currentRootNode = $rootNode.prevArg()).getArgValue();
                            initializer =
                                SCJavaDefn.createInvocation(
                                    new Assignment(LOCALVAR_CURRENT_ROOT_NODE, SCJavaDefn.createInvocation(METHODVAR_ROOT_NODE, SCJavaDefn.PREVARG)),
                                    SCJavaDefn.GETARGVALUE);
                        } else {
                            //$rootNode.prevArg().getArgValue();
                            initializer =
                                SCJavaDefn.createInvocation(
                                    SCJavaDefn.createInvocation(METHODVAR_ROOT_NODE, SCJavaDefn.PREVARG),
                                    SCJavaDefn.GETARGVALUE);
                        }

                    } else if (i == 0) {

                        //$currentRootNode.prevArg().getArgValue();
                        initializer =
                            SCJavaDefn.createInvocation(
                                SCJavaDefn.createInvocation(LOCALVAR_CURRENT_ROOT_NODE, SCJavaDefn.PREVARG),
                                SCJavaDefn.GETARGVALUE);

                    } else {

                        //($currentRootNode = $currentRootNode.prevArg()).getArgValue();
                        initializer =
                            SCJavaDefn.createInvocation(
                                new Assignment(LOCALVAR_CURRENT_ROOT_NODE, SCJavaDefn.createInvocation(LOCALVAR_CURRENT_ROOT_NODE, SCJavaDefn.PREVARG)),
                                SCJavaDefn.GETARGVALUE);
                    }

                    final LocalVariableDeclaration argDeclaration =
                        new LocalVariableDeclaration((LocalVariable)arguments[i], initializer, !fieldStrictness[i]);
View Full Code Here

                   //}
                   String localName = javaFieldNames[i]+"$";
                   LocalVariable localVariable = new LocalVariable(localName, JavaTypeNames.RTVALUE);
                   LocalVariableDeclaration localDeclaration = new LocalVariableDeclaration(localVariable);
                   javaMethod.addStatement(localDeclaration);
                   Assignment localAssignment = new Assignment(localVariable, field);
                   InstanceOf checkType = new InstanceOf(localAssignment, JavaTypeNames.RTRESULT_FUNCTION);
                   MethodInvocation getValue = new MethodInvocation.Instance(localVariable, "getValue", JavaTypeNames.RTVALUE, MethodInvocation.InvocationType.VIRTUAL);
                   Assignment fieldAssignment = new Assignment(field, getValue);
                   ReturnStatement returnNewVal = new ReturnStatement(fieldAssignment);
                   IfThenElseStatement ifThen = new IfThenElseStatement(checkType, returnNewVal);
                   javaMethod.addStatement(ifThen);
                   javaMethod.addStatement(new ReturnStatement (localVariable));
View Full Code Here

TOP

Related Classes of org.openquark.cal.internal.javamodel.JavaExpression.Assignment

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.