Package: org.codehaus.groovy.macro.runtime

## [Java] Class MacroContext

- org.codehaus.groovy.macro.runtime.MacroContext

-     public class MacroContext
      extends Object

  Macro method context. Every macro method must be an extension method of it.

  Since:
    2.5.0

- - ### Constructor Summary

    Constructors
    Constructor and description
    `MacroContext(CompilationUnit compilationUnit, SourceUnit sourceUnit, MethodCallExpression call)` Creates a macro context for the current macro method invocation.

  - ### Methods Summary

    Methods
    Type Params | Return Type | Name and description
    --- | --- | ---
    `` | `public MethodCallExpression` | `getCall()` Returns: original method call expression
    `` | `public CompilationUnit` | `getCompilationUnit()` Returns: current compilation unit
    `` | `public SourceUnit` | `getSourceUnit()` Returns: current source unit

  - ### Inherited Methods Summary

    Inherited Methods
    Methods inherited from class | Name
    --- | ---
    `class Object` | `equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- - ### Constructor Detail

    - #### public MacroContext(CompilationUnit compilationUnit, SourceUnit sourceUnit, MethodCallExpression call)

      Creates a macro context for the current macro method invocation.

      Parameters:
        `compilationUnit` - the current compilation unit
        `sourceUnit` - the current source unit
        `call` - the original macro call expression

  - ### Method Detail

    - #### public MethodCallExpression getCall()

      Returns:
        original method call expression

    - #### public CompilationUnit getCompilationUnit()

      Returns:
        current compilation unit

    - #### public SourceUnit getSourceUnit()

      Returns:
        current source unit