Lines Matching defs:type_info

91 PYBIND11_NOINLINE inline void all_type_info_populate(PyTypeObject *t, std::vector<type_info *> &bases) {
137 * Extracts vector of type_info pointers of pybind-registered roots of the given Python type. Will
146 inline const std::vector<detail::type_info *> &all_type_info(PyTypeObject *type) {
160 PYBIND11_NOINLINE inline detail::type_info* get_type_info(PyTypeObject *type) {
169 inline detail::type_info *get_local_type_info(const std::type_index &tp) {
177 inline detail::type_info *get_global_type_info(const std::type_index &tp) {
186 PYBIND11_NOINLINE inline detail::type_info *get_type_info(const std::type_index &tp,
201 PYBIND11_NOINLINE inline handle get_type_handle(const std::type_info &tp, bool throw_if_missing) {
202 detail::type_info *type_info = get_type_info(tp, throw_if_missing);
203 return handle(type_info ? ((PyObject *) type_info->type) : nullptr);
209 const detail::type_info *type = nullptr;
213 value_and_holder(instance *i, const detail::type_info *type, size_t vpos, size_t index) :
265 using type_vec = std::vector<detail::type_info *>;
303 iterator find(const type_info *find_type) {
322 PYBIND11_NOINLINE inline value_and_holder instance::get_value_and_holder(const type_info *find_type /*= nullptr default in common.h*/, bool throw_if_missing /*= true in common.h*/) {
399 PYBIND11_NOINLINE inline bool isinstance_generic(handle obj, const std::type_info &tp) {
453 PYBIND11_NOINLINE inline handle get_object_handle(const void *ptr, const detail::type_info *type ) {
485 PYBIND11_NOINLINE type_caster_generic(const std::type_info &type_info)
486 : typeinfo(get_type_info(type_info)), cpptype(&type_info) { }
488 type_caster_generic(const type_info *typeinfo)
496 const detail::type_info *tinfo,
607 PYBIND11_NOINLINE static void *local_load(PyObject *src, const type_info *ti) {
622 type_info *foreign_typeinfo = reinterpret_borrow<capsule>(getattr(pytype, local_key));
723 PYBIND11_NOINLINE static std::pair<const void *, const type_info *> src_and_type(
724 const void *src, const std::type_info &cast_type, const std::type_info *rtti_type = nullptr) {
726 return {src, const_cast<const type_info *>(tpi)};
736 const type_info *typeinfo = nullptr;
737 const std::type_info *cpptype = nullptr;
794 // If so, it sets `tinfo` to point to the std::type_info representing that derived
812 static const void *get(const itype *src, const std::type_info*&) { return src; }
817 static const void *get(const itype *src, const std::type_info*& type) {
833 explicit type_caster_base(const std::type_info &info) : type_caster_generic(info) { }
845 // Returns a (pointer, type_info) pair taking care of necessary type lookup for a
848 static std::pair<const void *, const type_info *> src_and_type(const itype *src) {
850 const std::type_info *instance_type = nullptr;