Class AbstractCompilerIssues
- java.lang.Object
-
- net.officefloor.compile.impl.issues.AbstractCompilerIssues
-
- All Implemented Interfaces:
CompilerIssues
- Direct Known Subclasses:
FailCompilerIssues,FailTestCompilerIssues,StderrCompilerIssues
public abstract class AbstractCompilerIssues extends java.lang.Object implements CompilerIssues
AbstractCompilerIssues- Author:
- Daniel Sagenschneider
-
-
Constructor Summary
Constructors Constructor Description AbstractCompilerIssues()
-
Method Summary
All Methods Instance Methods Abstract Methods Concrete Methods Modifier and Type Method Description CompileErroraddIssue(Node node, java.lang.String issueDescription, java.lang.Throwable cause)Adds an issue regarding a particularNode.CompileErroraddIssue(Node node, java.lang.String issueDescription, CompilerIssue... causes)Adds an issue regarding a particularNode.<R> IssueCapture<R>captureIssues(java.util.function.Supplier<R> supplier)CapturesCompilerIssueinstances.protected CompilerIssuecreateCompilerIssue(Node node, java.lang.String issueDescription, java.lang.Throwable cause, CompilerIssue[] causes)Creates theCompilerIssuefor use in abstract functionality.protected abstract voidhandleDefaultIssue(DefaultCompilerIssue issue)Implement to handleDefaultCompilerIssue.protected voidhandleIssue(CompilerIssue issue)Override to handle theCompilerIssue.
-
-
-
Method Detail
-
handleIssue
protected void handleIssue(CompilerIssue issue)
Override to handle theCompilerIssue.- Parameters:
issue-CompilerIssue.
-
handleDefaultIssue
protected abstract void handleDefaultIssue(DefaultCompilerIssue issue)
Implement to handleDefaultCompilerIssue.- Parameters:
issue-DefaultCompilerIssue.
-
captureIssues
public <R> IssueCapture<R> captureIssues(java.util.function.Supplier<R> supplier)
Description copied from interface:CompilerIssuesCapturesCompilerIssueinstances.- Specified by:
captureIssuesin interfaceCompilerIssues- Type Parameters:
R- Return type ofSupplierlogic.- Parameters:
supplier-Supplierof code to captureCompilerIssuewithin.- Returns:
IssueCapture.
-
addIssue
public CompileError addIssue(Node node, java.lang.String issueDescription, CompilerIssue... causes)
Description copied from interface:CompilerIssuesAdds an issue regarding a particularNode.- Specified by:
addIssuein interfaceCompilerIssues- Parameters:
node-Node.issueDescription- Description of the issue.causes- PossibleCompilerIssueinstances causing this issue.- Returns:
CompileErrorto be used inthrowstatement when addingCompilerIssueto avoid further compiling of theNode.
-
addIssue
public CompileError addIssue(Node node, java.lang.String issueDescription, java.lang.Throwable cause)
Description copied from interface:CompilerIssuesAdds an issue regarding a particularNode.- Specified by:
addIssuein interfaceCompilerIssues- Parameters:
node-Node.issueDescription- Description of the issue.cause- Cause of the issue.- Returns:
CompileErrorto be used inthrowstatement when addingCompilerIssueto avoid further compiling of theNode.
-
createCompilerIssue
protected CompilerIssue createCompilerIssue(Node node, java.lang.String issueDescription, java.lang.Throwable cause, CompilerIssue[] causes)
Creates theCompilerIssuefor use in abstract functionality. If not overriden, aDefaultCompilerIssueis used.- Parameters:
node-Node.issueDescription- Issue description.cause- Optional cause. May benull.causes- Optional causeCompilerIssueinstances.- Returns:
CompilerIssue, with default implementation providing aDefaultCompilerIssue.
-
-