X-Git-Url: https://gerrit.simantics.org/r/gitweb?p=simantics%2Fplatform.git;a=blobdiff_plain;f=bundles%2Forg.simantics.scl.compiler%2Fsrc%2Forg%2Fsimantics%2Fscl%2Fcompiler%2Fsource%2Frepository%2FModuleSourceRepository.java;h=fe014773c909f1ca0a4cc3f79439e8a4d7ab3b5b;hp=c335a8aa1349d8bc4cf42c1c6ada90fd2961568e;hb=947cdc62f1d9a353726d29693c339edd1d0cacf6;hpb=9ea5cf59a4d87c3db3a486e86d7b54efffd5516d diff --git a/bundles/org.simantics.scl.compiler/src/org/simantics/scl/compiler/source/repository/ModuleSourceRepository.java b/bundles/org.simantics.scl.compiler/src/org/simantics/scl/compiler/source/repository/ModuleSourceRepository.java index c335a8aa1..fe014773c 100644 --- a/bundles/org.simantics.scl.compiler/src/org/simantics/scl/compiler/source/repository/ModuleSourceRepository.java +++ b/bundles/org.simantics.scl.compiler/src/org/simantics/scl/compiler/source/repository/ModuleSourceRepository.java @@ -1,11 +1,13 @@ package org.simantics.scl.compiler.source.repository; +import java.io.IOException; import java.util.Collection; import java.util.Collections; import org.simantics.scl.compiler.module.repository.ModuleRepository; import org.simantics.scl.compiler.module.repository.UpdateListener; import org.simantics.scl.compiler.source.ModuleSource; +import org.simantics.scl.compiler.source.TextualModuleSource; import gnu.trove.procedure.TObjectProcedure; @@ -76,4 +78,13 @@ public interface ModuleSourceRepository { */ default void clear() { } + + default String getPossibleSourceText(String moduleName) throws IOException { + ModuleSource moduleSource = getModuleSource(moduleName, null); + if(moduleSource == null) + return null; + if(!(moduleSource instanceof TextualModuleSource)) + return null; + return ((TextualModuleSource)moduleSource).getSourceText(null); + } }