diff options
author | Abdullah Sowayan <sowayan@users.noreply.github.com> | 2007-03-18 22:23:37 +0000 |
---|---|---|
committer | Abdullah Sowayan <sowayan@users.noreply.github.com> | 2007-03-18 22:23:37 +0000 |
commit | 06a34455bd98b1379cc69bbc5b2cf085e0fc0d9b (patch) | |
tree | 8815ce3b3a85c3c4285429295f338e00ea4497f4 /CIAO/CCF/CCF/IDL2/Traversal/Array.cpp | |
parent | d66fcc9b4aaec8e88eeb83fc578fdf8a3cc963de (diff) | |
download | ATCD-06a34455bd98b1379cc69bbc5b2cf085e0fc0d9b.tar.gz |
Diffstat (limited to 'CIAO/CCF/CCF/IDL2/Traversal/Array.cpp')
-rw-r--r-- | CIAO/CCF/CCF/IDL2/Traversal/Array.cpp | 78 |
1 files changed, 78 insertions, 0 deletions
diff --git a/CIAO/CCF/CCF/IDL2/Traversal/Array.cpp b/CIAO/CCF/CCF/IDL2/Traversal/Array.cpp new file mode 100644 index 00000000000..e142383535f --- /dev/null +++ b/CIAO/CCF/CCF/IDL2/Traversal/Array.cpp @@ -0,0 +1,78 @@ +// file : CCF/IDL2/Traversal/Array.cpp +// author : Boris Kolpackov <boris@dre.vanderbilt.edu> +// cvs-id : $Id$ + +#include "CCF/IDL2/Traversal/Array.hpp" + +namespace CCF +{ + namespace IDL2 + { + namespace Traversal + { + void Array:: + traverse (Type& a) + { + pre (a); + arguments_with_type (a); + arguments_with_value (a); + name (a); + post (a); + } + + void Array:: + pre (Type&) + { + } + + void Array:: + arguments_with_type (Type& a, EdgeDispatcherBase& d) + { + d.traverse (**a.arguments_begin ()); + } + + void Array:: + arguments_with_type (Type& a) + { + arguments_with_type (a, edge_traverser ()); + } + + void Array:: + arguments_with_value (Type& a, EdgeDispatcherBase& d) + { + Type::ArgumentsIterator + b (a.arguments_begin ()), e (a.arguments_end ()); + + ++b; // Bounds start afterthe type. + + iterate_and_traverse (b, + e, + d, + *this, + &Array::comma, + a); + } + + void Array:: + arguments_with_value (Type& a) + { + arguments_with_value (a, edge_traverser ()); + } + + void Array:: + comma (Type&) + { + } + + void Array:: + name (Type&) + { + } + + void Array:: + post (Type&) + { + } + } + } +} |