| 217 | /// Fill attributes of builtin types. |
| 218 | #[cold] |
| 219 | pub(crate) fn extend(context: &'static Context) { |
| 220 | // object must be initialized before type to set object.slots.init, |
| 221 | // which type will inherit via inherit_slots() |
| 222 | object::init(context); |
| 223 | type_::init(context); |
| 224 | list::init(context); |
| 225 | set::init(context); |
| 226 | tuple::init(context); |
| 227 | dict::init(context); |
| 228 | builtin_func::init(context); |
| 229 | function::init(context); |
| 230 | staticmethod::init(context); |
| 231 | classmethod::init(context); |
| 232 | generator::init(context); |
| 233 | coroutine::init(context); |
| 234 | asyncgenerator::init(context); |
| 235 | int::init(context); |
| 236 | float::init(context); |
| 237 | complex::init(context); |
| 238 | bytes::init(context); |
| 239 | bytearray::init(context); |
| 240 | capsule::init(context); |
| 241 | property::init(context); |
| 242 | getset::init(context); |
| 243 | memory::init(context); |
| 244 | pystr::init(context); |
| 245 | range::init(context); |
| 246 | slice::init(context); |
| 247 | super_::init(context); |
| 248 | iter::init(context); |
| 249 | enumerate::init(context); |
| 250 | filter::init(context); |
| 251 | map::init(context); |
| 252 | zip::init(context); |
| 253 | bool_::init(context); |
| 254 | code::init(context); |
| 255 | frame::init(context); |
| 256 | weakref::init(context); |
| 257 | weakproxy::init(context); |
| 258 | singletons::init(context); |
| 259 | module::init(context); |
| 260 | namespace::init(context); |
| 261 | mappingproxy::init(context); |
| 262 | traceback::init(context); |
| 263 | genericalias::init(context); |
| 264 | union_::init(context); |
| 265 | interpolation::init(context); |
| 266 | template::init(context); |
| 267 | descriptor::init(context); |
| 268 | crate::stdlib::_typing::init(context); |
| 269 | } |
| 270 | } |