Class SasMacroProcessor

java.lang.Object
name.jurgenei.gradle.antlr.SasMacroProcessor

public final class SasMacroProcessor extends Object
Expands a minimal subset of SAS macro syntax for proof-of-concept builds.

Supported behavior:

  • %let name = value; declarations.
  • &name and &name. references.
  • Recursive expansion of macro values with loop protection.
  • Constructor Details

    • SasMacroProcessor

      public SasMacroProcessor(Map<String,String> predefinedMacros)
      Creates processor with optional predefined macros.
      Parameters:
      predefinedMacros - macros injected before file-local declarations.
  • Method Details

    • expand

      Expands macro declarations and references in content.
      Parameters:
      source - source SAS text.
      Returns:
      expansion result containing output, effective macro table, and unresolved references.