com.thesett.aima.logic.fol.bytecode.CallPointResolver Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of logic Show documentation
Show all versions of logic Show documentation
Rich syntax trees and parsers for working with first order logic.
/*
* Copyright The Sett Ltd, 2005 to 2014.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package com.thesett.aima.logic.fol.bytecode;
/**
* A CallPointResolver is capable of resolving a call point (callable address) from the interned named of a procedure or
* block of code. It is typically used by a code generator, to resolve 'call' instructions which are defined over the
* high level interned names of callable procedures, onto the actuall call addresses when inserting code into a binary
* machine.
*
*
CRC Card
* Responsibilities Collaborations
* Resolve an interned name onto a call point.
*
*
* @author Rupert Smith
*/
public interface CallPointResolver
{
/**
* Resolves a call point for the interned name of a callable procedure that may exist in the code that the machine
* already holds.
*
* @param name The interned name of the procedure to call.
*
* @return The call point of the callable procedure, or null if none exists for the specified name.
*/
CallPoint resolveCallPoint(int name);
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy