java.lang.Object
org.aya.cli.library.incremental.InMemoryCompilerAdvisor
- All Implemented Interfaces:
AutoCloseable,CompilerAdvisor
-
Field Summary
FieldsModifier and TypeFieldDescriptionprotected final @NotNull kala.collection.mutable.MutableMap<org.aya.syntax.ref.ModulePath, org.aya.resolve.ResolveInfo> -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionvoidclearLibraryOutput(@NotNull LibraryOwner owner) voidclearModuleOutput(@NotNull LibrarySource source) @Nullable org.aya.resolve.ResolveInfodoLoadCompiledCore(@NotNull org.aya.util.reporter.Reporter reporter, @NotNull LibraryOwner owner, @NotNull org.aya.syntax.ref.ModulePath mod, @Nullable Path sourcePath, @Nullable Path corePath, @NotNull org.aya.resolve.module.ModuleLoader recurseLoader) Try to load the compiled core.voiddoSaveCompiledCore(@NotNull LibrarySource file, @NotNull org.aya.resolve.ResolveInfo resolveInfo, @NotNull kala.collection.immutable.ImmutableSeq<org.aya.syntax.core.def.TyckDef> defs) booleanisSourceModified(@NotNull LibrarySource source) voidprepareLibraryOutput(@NotNull LibraryOwner owner) protected @NotNull PathtimestampKey(@NotNull LibrarySource source) voidupdateLastModified(@NotNull LibrarySource source) Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface org.aya.cli.library.incremental.CompilerAdvisor
close, createParser, loadCompiledCore, notifyIncrementalJob, saveCompiledCore
-
Field Details
-
coreTimestamp
-
compiledCore
@NotNull protected final @NotNull kala.collection.mutable.MutableMap<org.aya.syntax.ref.ModulePath,org.aya.resolve.ResolveInfo> compiledCore
-
-
Constructor Details
-
InMemoryCompilerAdvisor
public InMemoryCompilerAdvisor()
-
-
Method Details
-
timestampKey
-
isSourceModified
- Specified by:
isSourceModifiedin interfaceCompilerAdvisor
-
updateLastModified
- Specified by:
updateLastModifiedin interfaceCompilerAdvisor
-
prepareLibraryOutput
- Specified by:
prepareLibraryOutputin interfaceCompilerAdvisor
-
clearLibraryOutput
- Specified by:
clearLibraryOutputin interfaceCompilerAdvisor
-
clearModuleOutput
- Specified by:
clearModuleOutputin interfaceCompilerAdvisor
-
doLoadCompiledCore
@Nullable public @Nullable org.aya.resolve.ResolveInfo doLoadCompiledCore(@NotNull @NotNull org.aya.util.reporter.Reporter reporter, @NotNull @NotNull LibraryOwner owner, @NotNull @NotNull org.aya.syntax.ref.ModulePath mod, @Nullable @Nullable Path sourcePath, @Nullable @Nullable Path corePath, @NotNull @NotNull org.aya.resolve.module.ModuleLoader recurseLoader) Description copied from interface:CompilerAdvisorTry to load the compiled core. ForDiskCompilerAdvisor, returns null if the core path does not exist or either source or core path is null. ForInMemoryCompilerAdvisor, returns null if the mod does not store in memory.- Specified by:
doLoadCompiledCorein interfaceCompilerAdvisor
-
doSaveCompiledCore
public void doSaveCompiledCore(@NotNull @NotNull LibrarySource file, @NotNull @NotNull org.aya.resolve.ResolveInfo resolveInfo, @NotNull @NotNull kala.collection.immutable.ImmutableSeq<org.aya.syntax.core.def.TyckDef> defs) - Specified by:
doSaveCompiledCorein interfaceCompilerAdvisor
-