summaryrefslogtreecommitdiff
path: root/src/module.h
diff options
context:
space:
mode:
authorMarius Kintel <marius@kintel.net>2013-06-06 02:25:58 (GMT)
committerMarius Kintel <marius@kintel.net>2013-06-06 02:25:58 (GMT)
commit626047f26d86079fe392bbd54d6e88a05cce85ef (patch)
tree2abe3d9bcb59c2c3dcbb4562d62015cc8ffed5b7 /src/module.h
parentf49ba90cb51874671d8106ed89caeb0e9d6f3ae1 (diff)
Minor refactoring of include checks
Diffstat (limited to 'src/module.h')
-rw-r--r--src/module.h19
1 files changed, 11 insertions, 8 deletions
diff --git a/src/module.h b/src/module.h
index 96e5649..e28677a 100644
--- a/src/module.h
+++ b/src/module.h
@@ -78,12 +78,6 @@ public:
LocalScope scope;
};
-struct IncludeFile {
- std::string filename;
- bool valid;
- time_t mtime;
-};
-
// FIXME: A FileModule doesn't have definition arguments, so we shouldn't really
// inherit from a Module
class FileModule : public Module
@@ -95,15 +89,24 @@ public:
void setModulePath(const std::string &path) { this->path = path; }
const std::string &modulePath() const { return this->path; }
void registerInclude(const std::string &localpath, const std::string &fullpath);
+ bool includesChanged() const;
bool handleDependencies();
virtual AbstractNode *instantiate(const Context *ctx, const ModuleInstantiation *inst, const EvalContext *evalctx = NULL) const;
+ bool hasIncludes() const { return !this->includes.empty(); }
+ bool usesLibraries() const { return !this->usedlibs.empty(); }
typedef boost::unordered_map<std::string, class FileModule*> ModuleContainer;
ModuleContainer usedlibs;
+private:
+ struct IncludeFile {
+ std::string filename;
+ bool valid;
+ time_t mtime;
+ };
+
+ bool include_modified(const IncludeFile &inc) const;
typedef boost::unordered_map<std::string, struct IncludeFile> IncludeContainer;
IncludeContainer includes;
- bool include_modified(struct IncludeFile inc);
-private:
bool is_handling_dependencies;
std::string path;
};
contact: Jan Huwald // Impressum