Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/torch/argcheck.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRonan Collobert <ronan@collobert.com>2014-11-08 04:11:52 +0300
committerRonan Collobert <ronan@collobert.com>2014-11-08 04:11:52 +0300
commitf672472b99f725d1a3980bb7f40ef18cf29476ba (patch)
tree66d93c415f20c1ae96c38d82a1c9d3487676442c
parentf83243fbd2ad8f3a60ff6e420f31e4386b96513e (diff)
removed one useless specific case
-rw-r--r--graph.lua42
1 files changed, 15 insertions, 27 deletions
diff --git a/graph.lua b/graph.lua
index c40d384..81fa844 100644
--- a/graph.lua
+++ b/graph.lua
@@ -85,36 +85,24 @@ function ACN:addpath(rules, rulemask, named)
end
end
- if #rulemask == 0 then -- the no argument case
- if not rules.force and self.rules then
- if rules ~= self.rules then
- error('argcheck rules led to ambiguous situations')
- end
+ local head, n = self:match(rules, rulemask, named)
+ if n == #rulemask then
+ -- check we are not overwriting something here
+ if not rules.force and head.rules and rules ~= head.rules then
+ error('argcheck rules led to ambiguous situations')
end
self.rules = rules
self.rulemask = rulemask
- else
- local head, n = self:match(rules, rulemask, named)
- if n == #rulemask and head.rules then
- if rules ~= head.rules then
- if rules.force then
- self.rules = rules
- self.rulemask = rulemask
- else
- error('argcheck rules led to ambiguous situations')
- end
- end
- end
- for n=n+1,#rulemask do
- local rule = rules[rulemask[n]]
- local node = ACN.new(rule.type,
- named and rule.name or nil,
- rule.check,
- n == #rulemask and rules or nil,
- n == #rulemask and rulemask or nil)
- head:add(node)
- head = node
- end
+ end
+ for n=n+1,#rulemask do
+ local rule = rules[rulemask[n]]
+ local node = ACN.new(rule.type,
+ named and rule.name or nil,
+ rule.check,
+ n == #rulemask and rules or nil,
+ n == #rulemask and rulemask or nil)
+ head:add(node)
+ head = node
end
end