1#ifndef art__paperback__carousel__object_hxx_
2#define art__paperback__carousel__object_hxx_
4#include <art/paperback/types.hxx>
5#include <art/paperback/forward.hxx>
6#include <art/paperback/visitor.hxx>
8#include <art/paperback/carousel/object-model.hxx>
127 Object(shared_ptr<Object_model::Abstract>);
144 shared_ptr<Object_model::Abstract>
_data;
154 return typeid(T) ==
object.
container().type();
163 return object.container().get<T>();
172 return object.container().get<T>();
Represents a COS boolean.
Definition boolean.hxx:16
Represents a COS dictionary.
Definition dictionary.hxx:17
Represents a COS integer.
Definition integer.hxx:16
Represents a COS name.
Definition name.hxx:16
Base class for containers.
Definition object-model.hxx:82
Owner of an indirect object.
Definition object-model.hxx:341
Represents a COS-file object.
Definition object.hxx:16
bool operator==(Object const &) const
Comparison.
Definition object.cxx:261
shared_ptr< Object_model::Abstract > _data
Holds the data of the object, either an instance of Object_model::Reference for references,...
Definition object.hxx:144
Identity const & identity() const
Get object identity, if reference.
Definition object.cxx:222
bool operator!=(Object const &) const
Comparison.
Definition object.cxx:270
friend bool is_of_type(Object const &)
Check object type.
Definition object.hxx:152
Object(Undefined const &)
Constructor.
Definition object.cxx:105
friend void accept(Object &, Visitor &)
Accept visitor on object.
Definition object.cxx:312
Object_model::Container_base & container()
Get the container of the object.
Definition object.cxx:288
Object & operator=(Object const &)
Assignment.
Definition object.cxx:235
friend Object clone(Object &)
Clone an object.
Definition object.cxx:303
friend T & object_cast(Object &)
This function provides access to the value of an object.
Definition object.hxx:161
void attach(Object_model::Owner &)
Attach object to owner.
Definition object.cxx:202
bool is_reference() const
Check if the objcet is a reference.
Definition object.cxx:211
Represents a COS real.
Definition real.hxx:16
Represents COS text.
Definition text.hxx:16
Definition undefined.hxx:14
Virtual base class for visitors.
Definition visitor.hxx:10
COS file format implementation namespace.
Definition array.cxx:6
bool is_of_type(Object const &object)
Check object type.
Definition object.hxx:152
void accept(Object &visitee, Visitor &v)
Accept visitor on object.
Definition object.cxx:312
T & object_cast(Object &object)
This function provides access to the value of an object.
Definition object.hxx:161
Object clone(Object &object)
Clone an object.
Definition object.cxx:303
Represents the identity of an indirect object.
Definition types.hxx:81