Class EarlyExitValidator
- java.lang.Object
-
- org.eclipse.xtext.validation.AbstractInjectableValidator
-
- org.eclipse.xtext.validation.AbstractDeclarativeValidator
-
- org.eclipse.xtext.xbase.validation.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
-
-
Constructor Summary
Constructors Constructor Description EarlyExitValidator()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description void
checkDeadCode(XBasicForLoopExpression loop)
void
checkDeadCode(XBlockExpression block)
void
checkDeadCode(XDoWhileExpression loop)
void
checkDeadCode(XIfExpression condition)
void
checkDeadCode(XSwitchExpression switchExpression)
void
checkDeadCode(XWhileExpression loop)
void
checkInvalidReturnExpression(XExpression expression)
protected void
collectExits(org.eclipse.emf.ecore.EObject expr, java.util.List<XExpression> found)
protected com.google.common.base.Optional<BooleanResult>
getBooleanResult(XExpression expression)
protected java.util.Map<org.eclipse.emf.ecore.EReference,EarlyExitValidator.EarlyExitKind>
getDisallowedEarlyExitReferences()
protected int
markAsDeadCode(java.util.List<XCasePart> cases, XCasePart from, int idx, int size)
protected void
markConstantBooleanCondition(XExpression predicate, BooleanResult booleanResult, boolean ignoreBooleanLiteral)
void
register(org.eclipse.xtext.validation.EValidatorRegistrar registrar)
-
Methods inherited from class org.eclipse.xtext.validation.AbstractDeclarativeValidator
acceptError, acceptError, acceptInfo, acceptInfo, acceptWarning, acceptWarning, addIssue, addIssue, addIssue, addIssue, addIssue, addIssueToState, checkDone, checkIsFromCurrentlyCheckedResource, createDiagnostic, createDiagnostic, createMethodWrapper, error, error, error, error, error, error, error, error, getCancelIndicator, getChain, getCheckMode, getContext, getCurrentMethod, getCurrentObject, getIssueSeverities, getMessageAcceptor, guard, handleExceptionDuringValidation, info, info, info, info, info, info, info, info, internalValidate, isIgnored, newInstance, setInjector, setMessageAcceptor, toDiagnosticSeverity, warning, warning, warning, warning, warning, warning, warning, warning
-
-
-
-
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)
-
checkDeadCode
public void checkDeadCode(XBlockExpression block)
-
checkDeadCode
public void checkDeadCode(XWhileExpression loop)
-
markConstantBooleanCondition
protected void markConstantBooleanCondition(XExpression predicate, BooleanResult booleanResult, boolean ignoreBooleanLiteral)
-
checkDeadCode
public void checkDeadCode(XDoWhileExpression loop)
-
checkDeadCode
public void checkDeadCode(XIfExpression condition)
-
checkDeadCode
public void checkDeadCode(XBasicForLoopExpression loop)
-
getBooleanResult
protected com.google.common.base.Optional<BooleanResult> getBooleanResult(XExpression expression)
-
checkDeadCode
public void checkDeadCode(XSwitchExpression switchExpression)
-
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 classorg.eclipse.xtext.validation.AbstractInjectableValidator
-
-