Class OverrideAbstractSupport

java.lang.Object
ca.mcscert.jpipe.commands.linking.OverrideAbstractSupport
All Implemented Interfaces:
Command, MacroCommand

public final class OverrideAbstractSupport extends Object implements MacroCommand
Replaces an AbstractSupport placeholder (inlined from a template) with a concrete element. Expands into three atomic commands: RemoveElement, AddElement, RewireStrategySupport.

The condition defers execution until the abstract support is present in the model (i.e., after ImplementsTemplate has run).

  • Constructor Details

  • Method Details

    • container

      public String container()
    • qualifiedId

      public String qualifiedId()
    • newType

      public String newType()
    • label

      public String label()
    • location

      public SourceLocation location()
    • condition

      public Predicate<Unit> condition()
      Specified by:
      condition in interface Command
    • expand

      public List<Command> expand(Unit unit)
      Description copied from interface: MacroCommand
      Expands this macro into a sequence of atomic commands to be executed in order.
      Specified by:
      expand in interface MacroCommand
      Parameters:
      unit - the current unit, available to inspect model state.
      Returns:
      the list of commands to splice into the execution queue.
    • toString

      public String toString()
      Overrides:
      toString in class Object