org.eclipse.viatra.transformation.runtime.emf.filters

## Class MatchParameterFilter

- java.lang.Object
- - org.eclipse.viatra.transformation.runtime.emf.filters.MatchParameterFilter

- All Implemented Interfaces:
    java.util.function.Predicate<IPatternMatch>, EventFilter<IPatternMatch>

      public class MatchParameterFilter
      extends java.lang.Object
      implements EventFilter<IPatternMatch>

  A EVM filter that uses a parameter-value map that can be used for multiple patterns and rules. Use ParameterFilterFactory to create easily manage the mapping and create unmodifiable copies to be added to rules. Note When using the filter, parameter keys that does not match any parameter of a pattern match are ignored.

- - ### Constructor Summary

    Constructors
    Constructor and Description
    `MatchParameterFilter(java.util.Map.Entry<java.lang.String,?>... parameters)`
    `MatchParameterFilter(java.util.Map<java.lang.String,java.lang.Object> filterMap)`
    `MatchParameterFilter(java.lang.String name, java.lang.Object parameter)`

  - ### Method Summary

    All Methods Instance Methods Concrete Methods
    Modifier and Type | Method and Description
    --- | ---
    `boolean` | `isProcessable(IPatternMatch eventAtom)`
    `<Match extends IPatternMatch,Matcher extends ViatraQueryMatcher<Match>> Match` | `toMatch(Matcher matcher)`

    - ### Methods inherited from class java.lang.Object

      `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

    - ### Methods inherited from interface org.eclipse.viatra.transformation.evm.api.event.EventFilter

      `and, negate, or, test`

    - ### Methods inherited from interface java.util.function.Predicate

      `isEqual`

- - ### Constructor Detail

    - #### MatchParameterFilter

          public MatchParameterFilter(java.lang.String name,
                                      java.lang.Object parameter)

      Since:
        2.2

    - #### MatchParameterFilter

          public MatchParameterFilter(java.util.Map<java.lang.String,java.lang.Object> filterMap)

    - #### MatchParameterFilter

          @SafeVarargs
          public MatchParameterFilter(java.util.Map.Entry<java.lang.String,?>... parameters)

      Since:
        2.0

  - ### Method Detail

    - #### isProcessable

          public boolean isProcessable(IPatternMatch eventAtom)

      Specified by:
        `isProcessable` in interface `EventFilter<IPatternMatch>`

    - #### toMatch

          public <Match extends IPatternMatch,Matcher extends ViatraQueryMatcher<Match>> Match toMatch(Matcher matcher)