@staticmethod<EOL><INDENT>def value_type(type_):<DEDENT>
if not smart_pointer_traits.is_smart_pointer(type_):<EOL><INDENT>raise TypeError(<EOL>'<STR_LIT>' %<EOL>type_.decl_string)<EOL><DEDENT>try:<EOL><INDENT>return internal_type_traits.get_by_name(type_, "<STR_LIT>")<EOL><DEDENT>except runtime_errors.declaration_not_found_t:<EOL><INDENT>return _search_in_bases(type_)<EOL><DEDENT>
returns reference to `boost::shared_ptr` \
        or `std::shared_ptr` value type