Class CAstAbstractModuleLoader
java.lang.Object
com.ibm.wala.cast.loader.CAstAbstractLoader
com.ibm.wala.cast.loader.CAstAbstractModuleLoader
- All Implemented Interfaces:
IClassLoader
- Direct Known Subclasses:
JavaScriptLoader
abstract class loader that performs CAst and IR generation for relevant entities in a list of
Module
s. Subclasses provide the CAst / IR translators appropriate for the language.-
Nested Class Summary
Modifier and TypeClassDescriptionclass
class
class
-
Field Summary
Fields inherited from class com.ibm.wala.cast.loader.CAstAbstractLoader
cha, parent, types
-
Constructor Summary
-
Method Summary
Modifier and TypeMethodDescriptionprotected void
subclasses should override to perform actions after CAst and IR have been generated.protected File
protected abstract TranslatorToCAst
getTranslatorToCAst
(CAst ast, ModuleEntry M, List<Module> modules) create the appropriate CAst translator for the language and source modulevoid
Initialize internal data structures.protected abstract TranslatorToIR
initTranslator
(Set<Pair<CAstEntity, ModuleEntry>> topLevelEntities) create the appropriate IR translator for the languageprotected abstract boolean
shouldTranslate
(CAstEntity entity) should IR be generated for entity?Methods inherited from class com.ibm.wala.cast.loader.CAstAbstractLoader
addMessage, addMessages, clearMessages, getMessages, getModulesWithParseErrors, getModulesWithWarnings, getName, getNumberOfClasses, getNumberOfMethods, getParent, getSource, getSource, getSourceFileName, getSourceFileName, iterateAllClasses, lookupClass, lookupClass, removeAll
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
Methods inherited from interface com.ibm.wala.classLoader.IClassLoader
getInstructionFactory, getLanguage, getReference
-
Constructor Details
-
CAstAbstractModuleLoader
-
CAstAbstractModuleLoader
-
-
Method Details
-
getTranslatorToCAst
protected abstract TranslatorToCAst getTranslatorToCAst(CAst ast, ModuleEntry M, List<Module> modules) throws IOException create the appropriate CAst translator for the language and source module- Parameters:
modules
- all modules in the analysis- Throws:
IOException
-
shouldTranslate
should IR be generated for entity? -
initTranslator
protected abstract TranslatorToIR initTranslator(Set<Pair<CAstEntity, ModuleEntry>> topLevelEntities) create the appropriate IR translator for the language- Parameters:
topLevelEntities
- the set of all modules being translated
-
getLocalFile
- Throws:
IOException
-
finishTranslation
protected void finishTranslation()subclasses should override to perform actions after CAst and IR have been generated. by default, do nothing -
init
Description copied from interface:IClassLoader
Initialize internal data structures.
-