141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
...
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
|
return arg
else return sp end
end)
end
local function checkFromSec(sec,doc)
if sec and not id:find'%.' then
local rid = sec.refs[id]
if rid then
return rid, id, sec
end
if doc.sections[rid] then
return nil, id, doc.sections[rid]
end
else
local secid, ref = string.match(id, "(.-)%.(.+)")
local s
s = s or doc.sections[secid]
if s then
if s.refs[ref] then
................................................................................
rid = self.invocation.origin:ref(id)
if rid then
return rid, id, self.invocation.origin.sec
end
end
end
o,i,s = scanParents(doc)
if o or s then return o,i,s end
self:fail("ID ā%sā does not name an object or section", id)
end
};
}
|
|
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
...
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
|
return arg
else return sp end
end)
end
local function checkFromSec(sec,doc)
if not id:find'%.' then
if sec then
local rid = sec.refs[id]
if rid then
return rid, id, sec
end
end
if doc.sections[id] then
return nil, id, doc.sections[id]
end
else
local secid, ref = string.match(id, "(.-)%.(.+)")
local s
s = s or doc.sections[secid]
if s then
if s.refs[ref] then
................................................................................
rid = self.invocation.origin:ref(id)
if rid then
return rid, id, self.invocation.origin.sec
end
end
end
o,i,s = scanParents(self.doc)
if o or s then return o,i,s end
self:fail("ID ā%sā does not name an object or section", id)
end
};
}
|