gov.llnl.babel.symbols

Interface SymbolResolver

Known Subinterfaces:
Repository
Known Implementing Classes:
FileRepository, SymbolTable, WebRepository

public interface SymbolResolver

The SymbolResolver interface is implemented by concrete symbol resolvers used by the SymbolTable. Sample resolvers might query a type database or search through specified directories in the file system.

Method Summary

Symbol
lookupSymbol(String fqn)
Look up a symbol based on the fully qualified name but accept any version.
Symbol
lookupSymbol(SymbolID id)
Look up a symbol based on the fully qualified name and the version.

Method Details

lookupSymbol

public Symbol lookupSymbol(String fqn)
Look up a symbol based on the fully qualified name but accept any version. In general, resolvers should return the most recent version that matches the symbol name, but this behavior is not guaranteed. If the symbol name is not found or there is a problem with the symbol entry (for example, the XML format is invalid), then null is returned.

lookupSymbol

public Symbol lookupSymbol(SymbolID id)
Look up a symbol based on the fully qualified name and the version. If the symbol name is not found, the versions do not match, or there is a problem with the symbol entry, then null is returned.