Package org.openquark.cal.compiler

Examples of org.openquark.cal.compiler.MessageLogger


               
                try {
                    ExtendedUndoableEditSupport undoableEditSupport = tableTop.getUndoableEditSupport();
                    undoableEditSupport.beginUpdate();
           
                    CompilerMessageLogger logger = new MessageLogger();
                    importCleaner.calculateModifications(logger);
                   
                    if(logger.getMaxSeverity().compareTo(CompilerMessage.Severity.ERROR) >= 0) {
                        closeMonitor();
                        showCompilationErrors(logger, getResourceString("ErrorWhileCalculatingModifications"));
                        return;
                    }
                   
                    incrementProgress();
                    setStatus(GemCutterMessages.getString("ApplyingModificationsStatus"));
                   
                    importCleaner.apply(logger);
                   
                    if(logger.getMaxSeverity().compareTo(CompilerMessage.Severity.ERROR) >= 0) {
                        closeMonitor();
                        showCompilationErrors(logger, getResourceString("ErrorWhileApplyingModifications"));
                        return;
                    }
                   
                    incrementProgress();
                    setStatus(GemCutterMessages.getString("RecompilingStatus"));
   
                    recompileWorkspace(true);
                   
                    if(logger.getMaxSeverity().compareTo(CompilerMessage.Severity.ERROR) >= 0) {
                        closeMonitor();
                        showCompilationErrors(logger, getResourceString("ErrorWhileRecompiling"));
                        return;
                    }
                   
View Full Code Here


        // Set the status label to show that the GemCutter is initializing
        setStatusFlag(getResourceString("InitializingFlag"));

        // Compile, capturing the max error severity and the error to be displayed, if any
        boolean foundErrors = false;
        CompilerMessageLogger logger = new MessageLogger ();

        // Set to busy cursor, since compilation may take a while.
        Cursor oldCursor = getCursor();
        setCursor(Cursor.getPredefinedCursor(Cursor.WAIT_CURSOR));
       
        try {
            workspaceManager.compile(logger, dirtyModulesOnly, listener);

        } finally {
            // Reset the old cursor.
            setCursor(oldCursor);
        }
   
        CompilerMessage.Severity errSev = logger.getMaxSeverity();
        if (errSev.compareTo(CompilerMessage.Severity.ERROR) >= 0) {
            foundErrors = true;
           
            // A problem occurred
View Full Code Here

               
                try {
                    ExtendedUndoableEditSupport undoableEditSupport = tableTop.getUndoableEditSupport();
                    undoableEditSupport.beginUpdate();
           
                    CompilerMessageLogger logger = new MessageLogger();
                    typeDeclsAdder.calculateModifications(logger);
                   
                    if(logger.getMaxSeverity().compareTo(CompilerMessage.Severity.ERROR) >= 0) {
                        closeMonitor();
                        showCompilationErrors(logger, getResourceString("ErrorWhileCalculatingModifications"));
                        return;
                    }
                   
                    incrementProgress();
                    setStatus(GemCutterMessages.getString("ApplyingModificationsStatus"));
                   
                    typeDeclsAdder.apply(logger);
                   
                    if(logger.getMaxSeverity().compareTo(CompilerMessage.Severity.ERROR) >= 0) {
                        closeMonitor();
                        showCompilationErrors(logger, getResourceString("ErrorWhileApplyingModifications"));
                        return;
                    }
                   
                    incrementProgress();
                    setStatus(GemCutterMessages.getString("RecompilingStatus"));
   
                    recompileWorkspace(true);
                   
                    if(logger.getMaxSeverity().compareTo(CompilerMessage.Severity.ERROR) >= 0) {
                        closeMonitor();
                        showCompilationErrors(logger, getResourceString("ErrorWhileRecompiling"));
                        return;
                    }
                                       
View Full Code Here

        for (final Gem.PartConnectable part : noTypeSinks){
            unboundPartToTypeMap.put(part, null);
        }
   
        // Grab all the good types.  This may throw a TypeException.
        final Pair<Map<CompositionNode.CompositionArgument, TypeExpr>, Map<CompositionNode, List<TypeExpr>>> resultPair = info.getTypeChecker().checkGraph(rootSet, info.getModuleName(), new MessageLogger());
        Map<CompositionNode.CompositionArgument, TypeExpr> argMap = resultPair.fst();
        Map<CompositionNode, List<TypeExpr>> rootNodeMap = resultPair.snd();
        // TODO Display any error messages from logger?

        // Populate the map.
View Full Code Here

            for (final CollectorGem enclosingCollector : enclosingCollectors) {
                typeCheckForestRoots.addAll(GemGraph.obtainForestRoots(enclosingCollector, false));
            }

            // Type check the forest.
            final Pair<Map<CompositionNode.CompositionArgument, TypeExpr>, Map<CompositionNode, List<TypeExpr>>> resultPair = info.getTypeChecker().checkGraph(typeCheckForestRoots, info.getModuleName(), new MessageLogger());
            Map<CompositionNode, List<TypeExpr>> rootNodeMap = resultPair.snd();
           
            // Get the inferred type for the gem.  These will be the types on the reflector gem used for this purpose.
            List<TypeExpr> gemTypeList = rootNodeMap.get(typeInferenceReflector);
View Full Code Here

                // Change the burn state 
                // Note that we don't call setBurnt() since we don't want to fire events for this test
                burntState = !wasBurnt;

                // Get the type of the gem given it's new burnt state
                CompilerMessageLogger logger = new MessageLogger ();
                Set<Gem> forestRoots = GemGraph.obtainForestRoots(gem, false);
                final Pair<Map<CompositionArgument, TypeExpr>, Map<CompositionNode, List<TypeExpr>>> resultPair = info.getTypeChecker().checkGraph(forestRoots, info.getModuleName(), logger);
                Map<CompositionNode, List<TypeExpr>> rootNodeMap = resultPair.snd();
                List<TypeExpr> typePieces = rootNodeMap.get(gem);
View Full Code Here

     * Analyses the editor code, updates qualification map, qualifies expression code,
     * and updates the UI with the analysis results.
     */
    public void updateQualifications() {
        // Qualify expression
        CompilerMessageLogger messageLogger = new MessageLogger();
        CodeAnalyser.QualificationResults qualificationResults;
       
        qualificationResults = codeAnalyser.qualifyExpression(calEditor.getText(), null, userResolvedAmbiguities, messageLogger);
       
        if (qualificationResults == null) {
View Full Code Here

    public static boolean evaluateExpression(NavFrameOwner owner, CALExpression expression, StringBuilder result) {
       
        // Check for old example format..
        if (expression.getQualifiedExpressionText().equals("") && expression.getExpressionText().length()>0) {
            // Expression has not been qualified
            CompilerMessageLogger messageLogger = new MessageLogger();
            CALExpression qualifiedExpression = qualifyExpression(owner, expression, messageLogger);
            if ((qualifiedExpression == null) && (result != null)) {
                result.append(messageLogger.getFirstError().getMessage());
                return false;
            }
        }
       
        String expressionText = expression.getQualifiedExpressionText();
        CompilerMessageLogger messageLogger = new MessageLogger();
        SourceModel.Expr expressionSourceModel = SourceModelUtilities.TextParsing.parseExprIntoSourceModel(expressionText, messageLogger);
       
        if (messageLogger.getNErrors() > 0) {
            // The expression could not be parsed.
            result.append(messageLogger.getFirstError().getMessage());
            return false;
        }
       
        Target expressionTarget = new Target.SimpleTarget(expressionSourceModel);
        ModuleName expressionModule = expression.getModuleContext();
        AdjunctSource expressionDef = expressionTarget.getTargetDef(null, owner.getTypeChecker().getTypeCheckInfo(expressionModule).getModuleTypeInfo());
       
        TypeExpr resultType = owner.getTypeChecker().checkFunction(expressionDef, expressionModule, messageLogger);

        if (resultType == null) {
            // The type checker couldn't figure out the type.
            result.append(messageLogger.getFirstError().getMessage());
            return false;
        }

        try {
            // Now create a target to be run by a value runner.
View Full Code Here

TOP

Related Classes of org.openquark.cal.compiler.MessageLogger

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.