MCPcopy Create free account
hub / github.com/apache/arrow / __new__

Method __new__

cpp/gdb_arrow.py:1237–1253  ·  view source on GitHub ↗
(cls, val)

Source from the content-addressed store, hash-verified

1235 """
1236
1237 def __new__(cls, val):
1238 # Lookup actual (derived) class to instantiate
1239 type_id = int(deref(val['type'])['id_'])
1240 type_class = lookup_type_class(type_id)
1241 if type_class is not None:
1242 cls = type_class.scalar_printer
1243 assert issubclass(cls, ScalarPrinter)
1244 self = object.__new__(cls)
1245 self.type_class = type_class
1246 self.type_name = type_class.name
1247 self.name = scalar_class_from_type(self.type_name)
1248 self.type_id = type_id
1249 # Cast to concrete Scalar class to access derived attributes.
1250 concrete_type = gdb.lookup_type(f"arrow::{self.name}")
1251 self.val = cast_to_concrete(val, concrete_type)
1252 self.is_valid = bool(self.val['is_valid'])
1253 return self
1254
1255 @property
1256 def type(self):

Callers 1

__new__Method · 0.45

Calls 4

derefFunction · 0.85
lookup_type_classFunction · 0.85
scalar_class_from_typeFunction · 0.85
cast_to_concreteFunction · 0.85

Tested by

no test coverage detected