Classes | Public Member Functions | Protected Member Functions | Private Attributes | Friends
Typelib::ValueVisitor Class Reference

#include <value.hh>

Inheritance diagram for Typelib::ValueVisitor:
Inheritance graph
[legend]

List of all members.

Classes

class  TypeDispatch

Public Member Functions

void apply (Value v)
virtual void dispatch (Value v)
 ValueVisitor (bool defval=false)
virtual ~ValueVisitor ()

Protected Member Functions

virtual bool visit_ (int8_t &)
virtual bool visit_ (uint8_t &)
virtual bool visit_ (int16_t &)
virtual bool visit_ (uint16_t &)
virtual bool visit_ (int32_t &)
virtual bool visit_ (uint32_t &)
virtual bool visit_ (int64_t &)
virtual bool visit_ (uint64_t &)
virtual bool visit_ (float &)
virtual bool visit_ (double &)
virtual bool visit_ (Value const &v, OpaqueType const &t)
virtual bool visit_ (Value const &v, Pointer const &t)
virtual bool visit_ (Value const &v, Array const &a)
virtual bool visit_ (Value const &v, Container const &a)
virtual bool visit_ (Value const &v, Compound const &c)
virtual bool visit_ (Value const &v, Compound const &c, Field const &f)
virtual bool visit_ (Enum::integral_type &v, Enum const &e)

Private Attributes

bool m_defval
TypeDispatchm_dispatcher

Friends

class TypeDispatch

Detailed Description

A visitor object that can be used to discover the type of a Value object

Definition at line 45 of file value.hh.


Constructor & Destructor Documentation

Typelib::ValueVisitor::ValueVisitor ( bool  defval = false)

Definition at line 151 of file typelib/value.cc.

Definition at line 155 of file typelib/value.cc.


Member Function Documentation

Reimplemented in Typelib::CastingVisitor< T >.

Definition at line 159 of file typelib/value.cc.

void Typelib::ValueVisitor::dispatch ( Value  v) [virtual]

This is for internal use only. To visit a Value object, use apply

Reimplemented in ContainerIterator.

Definition at line 140 of file typelib/value.cc.

virtual bool Typelib::ValueVisitor::visit_ ( int8_t &  ) [inline, protected, virtual]

Reimplemented in typelib_ruby::RubySetter, typelib_ruby::RubyGetter, and Typelib::EndianSwapVisitor.

Definition at line 54 of file value.hh.

virtual bool Typelib::ValueVisitor::visit_ ( uint8_t &  ) [inline, protected, virtual]

Reimplemented in typelib_ruby::RubySetter, typelib_ruby::RubyGetter, and Typelib::EndianSwapVisitor.

Definition at line 55 of file value.hh.

virtual bool Typelib::ValueVisitor::visit_ ( int16_t &  ) [inline, protected, virtual]

Reimplemented in typelib_ruby::RubySetter, typelib_ruby::RubyGetter, and Typelib::EndianSwapVisitor.

Definition at line 56 of file value.hh.

virtual bool Typelib::ValueVisitor::visit_ ( uint16_t &  ) [inline, protected, virtual]

Reimplemented in typelib_ruby::RubySetter, typelib_ruby::RubyGetter, and Typelib::EndianSwapVisitor.

Definition at line 57 of file value.hh.

virtual bool Typelib::ValueVisitor::visit_ ( int32_t &  ) [inline, protected, virtual]
virtual bool Typelib::ValueVisitor::visit_ ( uint32_t &  ) [inline, protected, virtual]

Reimplemented in typelib_ruby::RubySetter, typelib_ruby::RubyGetter, and Typelib::EndianSwapVisitor.

Definition at line 59 of file value.hh.

virtual bool Typelib::ValueVisitor::visit_ ( int64_t &  ) [inline, protected, virtual]

Reimplemented in typelib_ruby::RubySetter, typelib_ruby::RubyGetter, and Typelib::EndianSwapVisitor.

Definition at line 60 of file value.hh.

virtual bool Typelib::ValueVisitor::visit_ ( uint64_t &  ) [inline, protected, virtual]

Reimplemented in typelib_ruby::RubySetter, typelib_ruby::RubyGetter, and Typelib::EndianSwapVisitor.

Definition at line 61 of file value.hh.

virtual bool Typelib::ValueVisitor::visit_ ( float &  ) [inline, protected, virtual]

Reimplemented in typelib_ruby::RubySetter, typelib_ruby::RubyGetter, and Typelib::EndianSwapVisitor.

Definition at line 62 of file value.hh.

virtual bool Typelib::ValueVisitor::visit_ ( double &  ) [inline, protected, virtual]

Reimplemented in typelib_ruby::RubySetter, typelib_ruby::RubyGetter, and Typelib::EndianSwapVisitor.

Definition at line 63 of file value.hh.

bool Typelib::ValueVisitor::visit_ ( Value const &  v,
OpaqueType const &  t 
) [protected, virtual]

Reimplemented in typelib_ruby::RubySetter, and typelib_ruby::RubyGetter.

Definition at line 138 of file typelib/value.cc.

bool Typelib::ValueVisitor::visit_ ( Value const &  v,
Pointer const &  t 
) [protected, virtual]
bool Typelib::ValueVisitor::visit_ ( Value const &  v,
Array const &  a 
) [protected, virtual]

Reimplemented in typelib_ruby::RubySetter, typelib_ruby::RubyGetter, and TestArrayVisitor.

Definition at line 113 of file typelib/value.cc.

bool Typelib::ValueVisitor::visit_ ( Value const &  v,
Container const &  a 
) [protected, virtual]

Reimplemented in typelib_ruby::RubySetter, and typelib_ruby::RubyGetter.

Definition at line 130 of file typelib/value.cc.

bool Typelib::ValueVisitor::visit_ ( Value const &  v,
Compound const &  c 
) [protected, virtual]

Reimplemented in typelib_ruby::RubySetter, and typelib_ruby::RubyGetter.

Definition at line 132 of file typelib/value.cc.

bool Typelib::ValueVisitor::visit_ ( Value const &  v,
Compound const &  c,
Field const &  f 
) [protected, virtual]

Reimplemented in Typelib::FieldGetter.

Definition at line 134 of file typelib/value.cc.

bool Typelib::ValueVisitor::visit_ ( Enum::integral_type v,
Enum const &  e 
) [protected, virtual]

Friends And Related Function Documentation

friend class TypeDispatch [friend]

Definition at line 47 of file value.hh.


Member Data Documentation

Definition at line 49 of file value.hh.

Definition at line 51 of file value.hh.


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


typelib
Author(s): Sylvain Joyeux/sylvain.joyeux@m4x.org
autogenerated on Mon Sep 14 2015 15:08:18