Lines Matching refs:item

47                 #return cls(raw.item, raw.typedecl, **raw._extra, **extra)
56 def from_resolved(cls, item, resolved, **extra):
58 return cls(item, typedecl=resolved, **extra)
60 typedeps, extra = cls._parse_raw_resolved(item, resolved, extra)
61 if item.kind is KIND.ENUM:
63 raise NotImplementedError((item, resolved, extra))
65 raise NotImplementedError((item, resolved, extra))
66 return cls(item, typedeps, **extra or {})
69 def _parse_raw_resolved(cls, item, resolved, extra_extra):
88 raise NotImplementedError((item, typedeps, extra))
91 def __init__(self, item, typedecl=None, **extra):
92 assert item is not None
93 self.item = item
96 elif item.kind is KIND.STRUCT or item.kind is KIND.UNION:
98 raise NotImplementedError(item, typedecl)
117 item = self.item
119 # Check item.
120 if not isinstance(item, HighlevelParsedItem):
121 raise ValueError(f'"item" must be a high-level parsed item, got {item!r}')
126 if hasattr(item, key) and not callable(getattr(item, key)):
127 raise ValueError(f'extra cannot override item, got {value!r} for key {key!r}')
131 f'item={self.item!r}',
145 return hash(self.item)
149 return self.item == other.item
151 return self.item == other
153 return self.item == other
159 return self.item > other.item
161 return self.item > other
163 return self.item > other
176 # The item takes precedence over the extra data (except if callable).
178 value = getattr(self.item, name)
206 if not isinstance(self.item, Declaration):
208 return self.item
217 return is_type_decl(self.item.kind)
229 self.item.fix_filename(relroot, **kwargs)
234 return self.item.as_rowdata(columns)
238 return self.item.render_rowdata(columns)
244 rendered = self.item.render(fmt)
290 self._analyzed = {type(self).build_item(item): None
291 for item in items or ()}
318 for item in self._analyzed:
319 item.fix_filename(relroot, fixroot=False, **kwargs)