orc
Class StdErrCompileMsgRecorder

java.lang.Object
  extended by orc.StdErrCompileMsgRecorder
All Implemented Interfaces:
CompileMessageRecorder

public class StdErrCompileMsgRecorder
extends java.lang.Object
implements CompileMessageRecorder

A CompileMessageRecorder that writes messages to the stderr stream, as given in an Orc Config instance.

Author:
jthywiss

Nested Class Summary
 
Nested classes/interfaces inherited from interface orc.error.compiletime.CompileMessageRecorder
CompileMessageRecorder.Severity
 
Constructor Summary
StdErrCompileMsgRecorder(Config config)
          Constructs an object of class StdErrCompileMsgRecorder.
 
Method Summary
 void beginProcessing(java.io.File file)
          Record that compile processing has begun for the given file.
 void endProcessing(java.io.File file)
          Record that compile processing is complete for the given file.
 CompileMessageRecorder.Severity getMaxSeverity()
           
 void recordMessage(CompileMessageRecorder.Severity severity, int code, java.lang.String message)
          Convenience method, equivalent to recordMessage(severity, code, message, null, null, null)
 void recordMessage(CompileMessageRecorder.Severity severity, int code, java.lang.String message, SourceLocation location, java.lang.Object astNode)
          Convenience method, equivalent to recordMessage(severity, code, message, location, astNode, null)
 void recordMessage(CompileMessageRecorder.Severity severity, int code, java.lang.String message, SourceLocation location, java.lang.Object astNode, java.lang.Throwable exception)
          Record a compile problem message.
 void recordMessage(CompileMessageRecorder.Severity severity, int code, java.lang.String message, SourceLocation location, java.lang.Throwable exception)
          Convenience method, equivalent to recordMessage(severity, code, message, location, null, exception)
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

StdErrCompileMsgRecorder

public StdErrCompileMsgRecorder(Config config)
Constructs an object of class StdErrCompileMsgRecorder.

Parameters:
config - the Orc configuration in use.
Method Detail

beginProcessing

public void beginProcessing(java.io.File file)
Description copied from interface: CompileMessageRecorder
Record that compile processing has begun for the given file. This also resets maxSeverity. Do not call for included files, only for the "main" file that the compiler was invoked on.

Specified by:
beginProcessing in interface CompileMessageRecorder
Parameters:
file - File for which compiler processing is beginning

endProcessing

public void endProcessing(java.io.File file)
Description copied from interface: CompileMessageRecorder
Record that compile processing is complete for the given file.

Specified by:
endProcessing in interface CompileMessageRecorder
Parameters:
file - File for which compiler processing is complete

recordMessage

public void recordMessage(CompileMessageRecorder.Severity severity,
                          int code,
                          java.lang.String message,
                          SourceLocation location,
                          java.lang.Object astNode,
                          java.lang.Throwable exception)
Description copied from interface: CompileMessageRecorder
Record a compile problem message. This message is forwarded to the environment in a manner specific to the implementing class.

Specified by:
recordMessage in interface CompileMessageRecorder
Parameters:
severity - CompileMessageRecorder.Severity of this message
code - integer code of this message (potentially used for filtering, is supported by the environment}
message - String localized message specifically describing problem for the complier user
location - SourceLocation where problem occurred. Indicate unknown location with a partially filled SourceLocation.
astNode - ASTNode subtree containing problem, or null if not applicable or not available.
exception - Throwable indicating problem, or null if not applicable or not available.

recordMessage

public void recordMessage(CompileMessageRecorder.Severity severity,
                          int code,
                          java.lang.String message,
                          SourceLocation location,
                          java.lang.Throwable exception)
Description copied from interface: CompileMessageRecorder
Convenience method, equivalent to recordMessage(severity, code, message, location, null, exception)

Specified by:
recordMessage in interface CompileMessageRecorder
Parameters:
severity - CompileMessageRecorder.Severity of this message
code - integer code of this message (potentially used for filtering, is supported by the environment}
message - String localized message specifically describing problem for the complier user
location - SourceLocation where problem occurred. Indicate unknown location with a partially filled SourceLocation.
exception - Throwable indicating problem, or null if not applicable or not available.

recordMessage

public void recordMessage(CompileMessageRecorder.Severity severity,
                          int code,
                          java.lang.String message,
                          SourceLocation location,
                          java.lang.Object astNode)
Description copied from interface: CompileMessageRecorder
Convenience method, equivalent to recordMessage(severity, code, message, location, astNode, null)

Specified by:
recordMessage in interface CompileMessageRecorder
Parameters:
severity - CompileMessageRecorder.Severity of this message
code - integer code of this message (potentially used for filtering, is supported by the environment}
message - String localized message specifically describing problem for the complier user
location - SourceLocation where problem occurred. Indicate unknown location with a partially filled SourceLocation.
astNode - ASTNode subtree containing problem, or null if not applicable or not available.

recordMessage

public void recordMessage(CompileMessageRecorder.Severity severity,
                          int code,
                          java.lang.String message)
Description copied from interface: CompileMessageRecorder
Convenience method, equivalent to recordMessage(severity, code, message, null, null, null)

Specified by:
recordMessage in interface CompileMessageRecorder
Parameters:
severity - CompileMessageRecorder.Severity of this message
code - integer code of this message (potentially used for filtering, is supported by the environment}
message - String localized message specifically describing problem for the complier user

getMaxSeverity

public CompileMessageRecorder.Severity getMaxSeverity()
Specified by:
getMaxSeverity in interface CompileMessageRecorder
Returns:
maximum severity of messages recoded since CompileMessageRecorder.beginProcessing(File) was invoked