blob: dc742390fdb84397693b21873d9fa0c1b0265e45 [file] [log] [blame]
/*******************************************************************************
* Copyright (c) 2004-2008 Akos Horvath, Gergely Varro and Daniel Varro
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
* which accompanies this distribution, and is available at
* http://www.eclipse.org/legal/epl-v10.html
*
* Contributors:
* Akos Horvath, Gergely Varro - initial API and implementation
*******************************************************************************/
package org.eclipse.viatra2.gtasm.patternmatcher;
import org.eclipse.viatra2.gtasmmodel.gtasm.metamodel.asm.definitions.Variable;
/*
* TODO The interpreted engine uses the following mappings:
* VariableType => PatternVariable
* ValueType => AnyModelElement
*/
/**
* The matching interface. A matching consists of bindings of pattern variables
* to model elements.
*
* @author Gergely Varro
*/
public interface IMatching {
/**
* Returns the model element to which this matching binds the specified
* variable.
* @param variable variable whose associated model element is to be
* returned.
* @return the model element to which this matching binds the specified
* key.
* @throws NullPointerException if the variable is <code>null</code>.
*/
public Object lookup(Variable variable);
public Object lookup(int position);
}