java.lang.Object
org.aya.cli.library.incremental.DelegateCompilerAdvisor
- All Implemented Interfaces:
CompilerAdvisor
-
Field Summary
Fields -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionvoidclearLibraryOutput(@NotNull LibraryOwner owner) voidclearModuleOutput(@NotNull LibrarySource source) @NotNull org.aya.concrete.GenericAyaParsercreateParser(@NotNull org.aya.util.reporter.Reporter reporter) Used for injecting parser from IJ plugin to support on-the-fly analysis.@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) voidnotifyIncrementalJob(@NotNull kala.collection.immutable.ImmutableSeq<LibrarySource> modified, @NotNull kala.collection.immutable.ImmutableSeq<kala.collection.immutable.ImmutableSeq<LibrarySource>> affected) Called when all modified sources are detectedvoidprepareLibraryOutput(@NotNull LibraryOwner owner) 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
loadCompiledCore, saveCompiledCore
-
Field Details
-
delegate
-
-
Constructor Details
-
DelegateCompilerAdvisor
-
-
Method Details
-
notifyIncrementalJob
public void notifyIncrementalJob(@NotNull @NotNull kala.collection.immutable.ImmutableSeq<LibrarySource> modified, @NotNull @NotNull kala.collection.immutable.ImmutableSeq<kala.collection.immutable.ImmutableSeq<LibrarySource>> affected) Description copied from interface:CompilerAdvisorCalled when all modified sources are detected- Specified by:
notifyIncrementalJobin interfaceCompilerAdvisor- Parameters:
modified- User directly modified source files.affected- SCC of modified sources.
-
isSourceModified
- Specified by:
isSourceModifiedin interfaceCompilerAdvisor
-
updateLastModified
- Specified by:
updateLastModifiedin interfaceCompilerAdvisor
-
prepareLibraryOutput
- Specified by:
prepareLibraryOutputin interfaceCompilerAdvisor- Throws:
IOException
-
clearLibraryOutput
- Specified by:
clearLibraryOutputin interfaceCompilerAdvisor- Throws:
IOException
-
clearModuleOutput
- Specified by:
clearModuleOutputin interfaceCompilerAdvisor- Throws:
IOException
-
createParser
@NotNull public @NotNull org.aya.concrete.GenericAyaParser createParser(@NotNull @NotNull org.aya.util.reporter.Reporter reporter) Description copied from interface:CompilerAdvisorUsed for injecting parser from IJ plugin to support on-the-fly analysis.- Specified by:
createParserin 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) throws IOException, ClassNotFoundException 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- Throws:
IOExceptionClassNotFoundException
-
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) throws IOException - Specified by:
doSaveCompiledCorein interfaceCompilerAdvisor- Throws:
IOException
-