Class EarlyExitValidator

  • All Implemented Interfaces:
    org.eclipse.emf.ecore.EValidator, org.eclipse.xtext.validation.ValidationMessageAcceptor

    public class EarlyExitValidator
    extends org.eclipse.xtext.validation.AbstractDeclarativeValidator
    • Nested Class Summary

      Nested Classes 
      Modifier and Type Class Description
      protected static class  EarlyExitValidator.EarlyExitKind  
      • Nested classes/interfaces inherited from class org.eclipse.xtext.validation.AbstractDeclarativeValidator

        org.eclipse.xtext.validation.AbstractDeclarativeValidator.MethodWrapper, org.eclipse.xtext.validation.AbstractDeclarativeValidator.State, org.eclipse.xtext.validation.AbstractDeclarativeValidator.StateAccess
      • Nested classes/interfaces inherited from interface org.eclipse.emf.ecore.EValidator

        org.eclipse.emf.ecore.EValidator.Descriptor, org.eclipse.emf.ecore.EValidator.PatternMatcher, org.eclipse.emf.ecore.EValidator.Registry, org.eclipse.emf.ecore.EValidator.SubstitutionLabelProvider, org.eclipse.emf.ecore.EValidator.ValidationDelegate
    • Field Summary

      • Fields inherited from class org.eclipse.xtext.validation.AbstractInjectableValidator

        CURRENT_LANGUAGE_NAME, ISSUE_SEVERITIES
      • Fields inherited from interface org.eclipse.emf.ecore.EValidator

        MARKER, RELATED_URIS_ATTRIBUTE, URI_ATTRIBUTE
      • Fields inherited from interface org.eclipse.xtext.validation.ValidationMessageAcceptor

        INSIGNIFICANT_INDEX
    • Constructor Detail

      • EarlyExitValidator

        public EarlyExitValidator()
    • Method Detail

      • getDisallowedEarlyExitReferences

        protected java.util.Map<org.eclipse.emf.ecore.EReference,​EarlyExitValidator.EarlyExitKind> getDisallowedEarlyExitReferences()
        Returns:
        map of references which
      • checkInvalidReturnExpression

        public void checkInvalidReturnExpression​(XExpression expression)
      • collectExits

        protected void collectExits​(org.eclipse.emf.ecore.EObject expr,
                                    java.util.List<XExpression> found)
      • markConstantBooleanCondition

        protected void markConstantBooleanCondition​(XExpression predicate,
                                                    BooleanResult booleanResult,
                                                    boolean ignoreBooleanLiteral)
      • checkDeadCode

        public void checkDeadCode​(XIfExpression condition)
      • getBooleanResult

        protected com.google.common.base.Optional<BooleanResult> getBooleanResult​(XExpression expression)
      • markAsDeadCode

        protected int markAsDeadCode​(java.util.List<XCasePart> cases,
                                     XCasePart from,
                                     int idx,
                                     int size)
      • register

        public void register​(org.eclipse.xtext.validation.EValidatorRegistrar registrar)
        Overrides:
        register in class org.eclipse.xtext.validation.AbstractInjectableValidator