Class AbstractConfigurationStatisticsVisitor

    • Constructor Detail

    • Method Detail

      • visitDecisionVariable

        public void visitDecisionVariable​(IDecisionVariable variable)
        Description copied from interface: IConfigurationVisitor
        Visits a decision variable.
        Parameters:
        variable - the decision variable to visit
      • visitVariable

        public void visitVariable​(IDecisionVariable variable,
                                  boolean nestedInContainer)
        Recursive part to visit all (nested) variables.
        Parameters:
        variable - The visited decision variable instance.
        nestedInContainer - true if the parent is a container, false otherwise.
      • visitRefines

        private void visitRefines​(Compound cmp)
        Visits all refined compounds and collects statistics.
        Parameters:
        cmp - the compound to visit
      • processEvalConstraints

        protected void processEvalConstraints​(PartialEvaluationBlock evalBlock)
        Processes constraints within an eval-block.
        Parameters:
        evalBlock - the block to process
      • visitVariableContainer

        protected void visitVariableContainer​(IDecisionVariableContainer cnt)
        Processes elements within a variable container.
        Parameters:
        cnt - the container
      • visitAssignment

        protected void visitAssignment​(AttributeAssignment assng)
        Processes attribute assignments.
        Parameters:
        assng - the assignment
      • specialTreatment

        protected abstract void specialTreatment​(IDecisionVariable variable)
        Optional hook to realize additional statistics for (nested) variables.
        Parameters:
        variable - A visited variable. This will be called for all variables, independently if they are m toplevel variables or if they are nested.
      • specialTreatment

        protected abstract void specialTreatment​(Project mainProject)
        Optional hook to realize additional statistics for the underlying IVML project.
        Parameters:
        mainProject - Configuration.getProject().
      • visitConstraint

        protected void visitConstraint​(Constraint constraint)
        Processes a constraint. Added later, so default implementation is empty.
        Parameters:
        constraint - the constraint to process (contained constraint may be null)
      • visitDefaultValue

        protected void visitDefaultValue​(ConstraintSyntaxTree constraint)
        Processes a default value. Added later, so default implementation is empty.
        Parameters:
        constraint - the constraint to process (may be null)
      • visitOperationDefinition

        protected void visitOperationDefinition​(OperationDefinition opdef)
        Processes an operation definition. Added later, so default implementation is empty.
        Parameters:
        opdef - the operation definition