public interface Module extends Disposable
| Modifier and Type | Method and Description |
|---|---|
void |
addDisposable(Disposable disposable)
Register disposable
|
Scope |
createScope() |
Module |
getCoreModule()
Return module with core types, like INTEGER, BOOLEAN, REAL, etc.
|
Collection<String> |
getExports()
Returns collection of exported symbol's names
|
String |
getModuleName()
Returns module name
|
ModuleReference |
getModuleReference()
Return module reference
|
ModuleResolver |
getModuleResolver()
Return module resolver used by this module
|
TagMethod |
getTagMethod()
Returns module tag method
|
TypeResolver |
getTypeResolver() |
ValueResolver |
getValueResolver() |
boolean |
hasExports()
Returns true of there are any symbols in export list,
this method returns false when modules exports all symbols
|
boolean |
isAllTypesExtensible()
Returns true if all types are extensible
|
boolean |
isExportAll()
Returns true if module exports all symbols
|
void |
setAllTypesExtensible(boolean flag)
Allow all types to be extensible
|
void |
setExports(Collection<String> exports) |
void |
setTagMethod(TagMethod tagMethod) |
default void |
validate()
Validates this module and all its types, values.
|
void |
validate(boolean types,
boolean values)
Validates this module and all its types, values.
|
disposeScope createScope()
Module getCoreModule()
@Nullable ModuleResolver getModuleResolver()
ModuleResolver@NotNull TypeResolver getTypeResolver()
@NotNull ValueResolver getValueResolver()
@NotNull ModuleReference getModuleReference()
ModuleReference@NotNull String getModuleName()
@NotNull TagMethod getTagMethod()
void setTagMethod(TagMethod tagMethod)
boolean isAllTypesExtensible()
boolean hasExports()
boolean isExportAll()
Collection<String> getExports()
void addDisposable(Disposable disposable)
disposable - a disposablevoid setAllTypesExtensible(boolean flag)
flag - extensible flagvoid setExports(@Nullable
Collection<String> exports)
default void validate()
throws ValidationException,
ResolutionException
ValidationException - if module itself or any sibling object can not be validatedResolutionException - if references can not be resolvedvoid validate(boolean types,
boolean values)
throws ValidationException,
ResolutionException
types - if types should be validatedvalues - if values should be validatedValidationException - if module itself or any sibling object can not be validatedResolutionException - if references can not be resolvedCopyright © 2017. All rights reserved.