1 package org.simantics.scl.compiler.source.repository;
3 import org.simantics.scl.compiler.module.repository.ModuleRepository;
4 import org.simantics.scl.compiler.module.repository.UpdateListener;
5 import org.simantics.scl.compiler.source.ModuleSource;
7 import gnu.trove.procedure.TObjectProcedure;
10 * An interface for locating modules descriptors and listening if they change.
11 * An instance of this interface is used to create a {@link ModuleRepository}.
13 * @author Hannu Niemistö
15 public interface ModuleSourceRepository {
16 ModuleSource getModuleSource(String moduleName, UpdateListener listener);
17 void forAllModules(TObjectProcedure<String> procedure);
18 String getDocumentation(String documentationName);
19 void forAllDocumentations(TObjectProcedure<String> procedure);