Lines Matching refs:items
76 let items = []
83 call add(items, strpart(base, s))
88 call add(items, strpart(base, s, e - s))
111 call add(items, strpart(base, s, e - s))
117 " Find the variable items[0].
122 if searchdecl(items[0], 0, 1) == 0
148 if len(items) == 1
151 let match = items[0]
167 elseif len(items) == arrays + 1
170 let match = items[0]
176 let res = s:Nextitem(strpart(line, 0, col), items[1:], 0, 1)
180 if len(items) == 1 || len(items) == arrays + 1
182 if len(items) == 1
185 let tags = taglist('^' . items[0] . '$')
199 let diclist = taglist('^' . items[0] . '$')
208 call extend(res, s:StructMembers(diclist[i]['typename'], items[1:], 1))
210 call extend(res, s:StructMembers(diclist[i]['typeref'], items[1:], 1))
218 let col = match(line, '\<' . items[0] . '\>')
219 call extend(res, s:Nextitem(strpart(line, 2, col - 2), items[1:], 0, 1))
225 if len(res) == 0 && searchdecl(items[0], 1) == 0
230 let res = s:Nextitem(strpart(line, 0, col), items[1:], 0, 1)
234 let last = len(items) - 1
237 if items[last][0] != '['
240 let brackets = items[last] . brackets
294 " Use all the items in dictionary for the "info" entry.
309 " Parse a tag line and return a dictionary with items like taglist()
400 " Find composing type in "lead" and match items[0] with it.
401 " Repeat this recursively for items[1], if it's there.
404 func s:Nextitem(lead, items, depth, all) argument
422 let res = s:StructMembers(tokens[tidx] . ':' . tokens[tidx + 1], a:items, a:all)
438 call extend(res, s:StructMembers(item['typeref'], a:items, a:all))
442 call extend(res, s:StructMembers(item['typename'], a:items, a:all))
473 call extend(res, s:StructMembers(cmdtokens[0] . ':' . name, a:items, a:all))
477 call extend(res, s:Nextitem(cmdtokens[0], a:items, a:depth + 1, a:all))
496 func s:StructMembers(typename, items, all) argument
533 " Skip over [...] items
536 if idx >= len(a:items)
537 let target = '' " No further items, matching all members
540 if a:items[idx][0] != '['
541 let target = a:items[idx]
570 " Skip over next [...] items
573 if idx >= len(a:items)
574 return matches " No further items, return the result.
576 if a:items[idx][0] != '['
582 " More items following. For each of the possible members find the
584 return s:SearchMembers(matches, a:items[idx :], a:all)
591 " For matching members, find matches for following items.
594 func s:SearchMembers(matches, items, all) argument
618 call extend(res, s:StructMembers(typename, a:items, a:all))
625 call extend(res, s:Nextitem(strpart(line, s, e - s), a:items, 0, a:all))