Adobe Source Libraries 1.49.0
A collection of C++ libraries.
Loading...
Searching...
No Matches

Abstract interface providing signatures needed to implement "handle" objects modeling a Value (Copyable/Movable) concept. Authors of poly classes must derive their interfaces from this. See poly_placeable_interface for an example. More...

#include <poly.hpp>

Inheritance diagram for poly_copyable_interface:
poly_placeable_interface poly_regular_interface poly_placeable_twopass_interface

Public Member Functions

virtual poly_copyable_interfaceclone (void *) const =0
virtual poly_copyable_interfacemove_clone (void *)=0
virtual void * cast ()=0
virtual const void * cast () const =0
virtual const std::type_info & type_info () const =0
virtual void assign (const poly_copyable_interface &x)=0
virtual void exchange (poly_copyable_interface &x)=0
virtual ~poly_copyable_interface ()

Detailed Description

Definition at line 61 of file poly.hpp.

Constructor & Destructor Documentation

◆ ~poly_copyable_interface()

virtual ~poly_copyable_interface ( )
virtual

Definition at line 74 of file poly.hpp.

Member Function Documentation

◆ clone()

virtual poly_copyable_interface * clone ( void * ) const
pure virtual

◆ move_clone()

virtual poly_copyable_interface * move_clone ( void * )
pure virtual

◆ cast() [1/2]

virtual void * cast ( )
pure virtual

◆ cast() [2/2]

virtual const void * cast ( ) const
pure virtual

◆ type_info()

virtual const std::type_info & type_info ( ) const
pure virtual

◆ assign()

virtual void assign ( const poly_copyable_interface & x)
pure virtual

◆ exchange()

virtual void exchange ( poly_copyable_interface & x)
pure virtual