diff options
author | graydon <graydon> | 2005-06-29 22:42:23 +0000 |
---|---|---|
committer | graydon <graydon> | 2005-06-29 22:42:23 +0000 |
commit | 20c6c071f5dfe6942438d97364e74f424217c94b (patch) | |
tree | 28e6a1a2dace1f2143ed16fb80f407082536676e /tapsets.h | |
parent | 05785c11dfdeaf11d98e7d65486a3870d00b5206 (diff) | |
download | systemtap-steved-20c6c071f5dfe6942438d97364e74f424217c94b.tar.gz systemtap-steved-20c6c071f5dfe6942438d97364e74f424217c94b.tar.xz systemtap-steved-20c6c071f5dfe6942438d97364e74f424217c94b.zip |
2005-06-27 Graydon Hoare <graydon@redhat.com>
* staptree.{h,cxx} (probe_alias): New structure.
* parse.{h,cxx} (parser::parse): Parse probes or probe aliases.
(parser::parse_probe): Likewise.
* tapsets.{h,cxx}:
(derived_probe_builder):
(match_key):
(match_node):
(alias_derived_probe): Move from here,
* elaborate.{h,cxx}: to here.
* elaborate.h (systemtap_session::pattern_root): New member.
(register_library_aliases): New function.
* tapsets.cxx: Build one dwarf_derived_probe per target address.
Diffstat (limited to 'tapsets.h')
-rw-r--r-- | tapsets.h | 54 |
1 files changed, 1 insertions, 53 deletions
@@ -12,61 +12,9 @@ #include "config.h" #include "staptree.h" #include "elaborate.h" -#include "translate.h" -#include <iostream> -#include <sstream> -#include <vector> -#include <map> - -struct -derived_probe_builder -{ - virtual derived_probe * build(probe * base, - probe_point * location, - std::map<std::string, literal *> const & parameters) = 0; - virtual ~derived_probe_builder() {} -}; - - -struct -match_key -{ - std::string name; - bool have_parameter; - token_type parameter_type; - - match_key(std::string const & n); - match_key(probe_point::component const & c); - - match_key & with_number(); - match_key & with_string(); - std::string str() const; - bool operator<(match_key const & other) const; -}; - - -class -match_node -{ - std::map<match_key, match_node *> sub; - derived_probe_builder * end; - - public: - match_node(); - derived_probe_builder * find_builder(std::vector<probe_point::component *> const & components, - unsigned pos, - std::vector< std::pair<std::string, literal *> > & parameters); - - match_node & bind(match_key const & k); - match_node & bind(std::string const & k); - match_node & bind_str(std::string const & k); - match_node & bind_num(std::string const & k); - void bind(derived_probe_builder * e); -}; - void -register_standard_tapsets(match_node & root); +register_standard_tapsets(match_node * root); #endif // TAPSETS_H |