Class ValuesCapturedBySignalHandlers

java.lang.Object
org.ek9lang.compiler.phase5.ValuesCapturedBySignalHandlers
All Implemented Interfaces:
BiFunction<ParsedModule, org.antlr.v4.runtime.tree.ParseTree, Set<ISymbol>>

final class ValuesCapturedBySignalHandlers extends Object implements BiFunction<ParsedModule, org.antlr.v4.runtime.tree.ParseTree, Set<ISymbol>>
The variables of one source that a signal handler captures, by IDENTITY (design ยง13.11 S2c, option A): the outer symbol each argument of a SignalHandler implementation's capture list names. The handler holds its own reference to that very object, so code that runs beside a signal handler changing it in place races the dispatcher (E08251); re-pointing the outer variable does not (the handler keeps the object it was given), and an unrelated variable of the same type is never taken for it.
  • Constructor Details

    • ValuesCapturedBySignalHandlers

      ValuesCapturedBySignalHandlers(List<IFunctionSymbol> signalHandlerTypes)
      Parameters:
      signalHandlerTypes - the function types Signals.register takes.
  • Method Details