Public Member Functions | Static Public Member Functions | List of all members
art::detail::value_type_helper Class Reference

#include "/cvmfs/nova.opensciencegrid.org/externals/canvas/v3_06_01/source/canvas/Persistency/Common/getElementAddresses.h"

Public Member Functions

bool starts_with_pair (std::string const &type_name, size_t pos=0)
 
template<typename T >
size_t look_past_pair ()
 

Static Public Member Functions

static std::string const & pair_stem ()
 
static size_t pair_stem_offset ()
 

Detailed Description

Definition at line 29 of file getElementAddresses.h.

Member Function Documentation

template<typename T >
size_t art::detail::value_type_helper::look_past_pair ( )
inline

Definition at line 53 of file getElementAddresses.h.

References pair_stem_offset(), elec2geo::pos, starts_with_pair(), string, and T.

Referenced by art::getElementAddresses(), and art::setPtr().

54  {
55  static std::string const mapped_type =
56  cet::demangle_symbol(typeid(T).name());
57  size_t pos = 0;
58  while (starts_with_pair(mapped_type, pos)) {
59  pos += pair_stem_offset();
60  }
61  return pos;
62  }
const XML_Char * name
Definition: expat.h:151
bool starts_with_pair(std::string const &type_name, size_t pos=0)
double T
Definition: Xdiff_gwt.C:5
enum BeamMode string
static std::string const& art::detail::value_type_helper::pair_stem ( )
inlinestatic

Definition at line 32 of file getElementAddresses.h.

References string.

Referenced by pair_stem_offset(), and starts_with_pair().

33  {
34  static std::string const pair_stem_s("std::pair<");
35  return pair_stem_s;
36  }
enum BeamMode string
static size_t art::detail::value_type_helper::pair_stem_offset ( )
inlinestatic

Definition at line 39 of file getElementAddresses.h.

References pair_stem().

Referenced by look_past_pair(), and starts_with_pair().

40  {
41  static size_t const pair_stem_offset_s = pair_stem().size();
42  return pair_stem_offset_s;
43  }
static std::string const & pair_stem()
bool art::detail::value_type_helper::starts_with_pair ( std::string const &  type_name,
size_t  pos = 0 
)
inline

Definition at line 46 of file getElementAddresses.h.

References pair_stem(), pair_stem_offset(), and elec2geo::pos.

Referenced by art::getElementAddresses(), look_past_pair(), and art::setPtr().

47  {
48  return (type_name.compare(pos, pair_stem_offset(), pair_stem()) == 0);
49  }
static std::string const & pair_stem()

The documentation for this class was generated from the following file: