java.lang.Object
org.aya.cli.library.incremental.InMemoryCompilerAdvisor
- All Implemented Interfaces:
CompilerAdvisor
-
Field Summary
FieldsModifier and TypeFieldDescriptionprotected final @NotNull kala.collection.mutable.MutableMap<kala.collection.immutable.ImmutableSeq<String>,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.core.serde.SerTerm.DeState deState, @NotNull org.aya.util.reporter.Reporter reporter, @NotNull kala.collection.immutable.ImmutableSeq<String> mod, @Nullable Path sourcePath, @Nullable Path corePath, @NotNull org.aya.resolve.module.ModuleLoader recurseLoader) Try to load the compiled core.voiddoSaveCompiledCore(@NotNull org.aya.core.serde.Serializer.State serState, @NotNull LibrarySource file, @NotNull org.aya.resolve.ResolveInfo resolveInfo, @NotNull kala.collection.immutable.ImmutableSeq<org.aya.core.def.GenericDef> 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
createParser, loadCompiledCore, notifyIncrementalJob, saveCompiledCore
-
Field Details
-
coreTimestamp
-
compiledCore
@NotNull protected final @NotNull kala.collection.mutable.MutableMap<kala.collection.immutable.ImmutableSeq<String>,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 org.aya.core.serde.SerTerm.DeState deState, @NotNull @NotNull org.aya.util.reporter.Reporter reporter, @NotNull @NotNull kala.collection.immutable.ImmutableSeq<String> 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 org.aya.core.serde.Serializer.State serState, @NotNull @NotNull LibrarySource file, @NotNull @NotNull org.aya.resolve.ResolveInfo resolveInfo, @NotNull @NotNull kala.collection.immutable.ImmutableSeq<org.aya.core.def.GenericDef> defs) - Specified by:
doSaveCompiledCorein interfaceCompilerAdvisor
-