summaryrefslogtreecommitdiff
path: root/qface/generator.py
diff options
context:
space:
mode:
authorJuergen Bocklage-Ryannel <juergen@ryannel.org>2018-11-22 13:10:34 +0100
committerJuergen Bocklage-Ryannel <juergen@ryannel.org>2018-11-22 13:10:34 +0100
commitffa5e14659ea6c7c7ffd25725089678c239a9155 (patch)
treeea4fe2f7dc94a12cd5159db8025bb1eb3b90df17 /qface/generator.py
parent2d6a4f42259cb137988538d5f2392d4602da1c9d (diff)
downloadqtivi-qface-ffa5e14659ea6c7c7ffd25725089678c239a9155.tar.gz
- add new qface binary to launch external rule files
- add ns to qtcpp/qtqml filters - restructured rules format, docs are now a list - changed monitor signature
Diffstat (limited to 'qface/generator.py')
-rw-r--r--qface/generator.py11
1 files changed, 9 insertions, 2 deletions
diff --git a/qface/generator.py b/qface/generator.py
index e65ad15..1e1da41 100644
--- a/qface/generator.py
+++ b/qface/generator.py
@@ -238,9 +238,11 @@ class RuleGenerator(Generator):
self.context.update(rule.get('context', {}))
self.destination = rule.get('destination', None)
self.source = rule.get('source', None)
- for target, source in rule.get('documents', {}).items():
+ for entry in rule.get('documents', []):
+ target, source = self._resolve_rule_document(entry)
self.write(target, source)
- for target, source in rule.get('preserve', {}).items():
+ for entry in rule.get('preserve', []):
+ target, source = self._resolve_rule_document(entry)
self.write(target, source, preserve=True)
def _shall_proceed(self, obj):
@@ -252,6 +254,11 @@ class RuleGenerator(Generator):
result = self.features.intersection(set(conditions))
return bool(len(result))
+ def _resolve_rule_document(self, entry):
+ if type(entry) is dict:
+ return next(iter(entry.items()))
+ return (entry, entry)
+
class FileSystem(object):
"""QFace helper functions to work with the file system"""