/usr/include/Cable/CxxTypes/cxxClassType.h is in libcableswig-dev 0.1.0+cvs20111009-1.1.
This file is owned by root:root, with mode 0o644.
The actual contents of the file can be viewed below.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 | /*=========================================================================
Program: CABLE - CABLE Automates Bindings for Language Extension
Module: $RCSfile: cxxClassType.h,v $
Language: C++
Date: $Date: 2003-02-26 20:28:12 $
Version: $Revision: 1.25 $
Copyright (c) 2002 Kitware, Inc., Insight Consortium. All rights reserved.
See Copyright.txt for details.
This software is distributed WITHOUT ANY WARRANTY; without even
the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
PURPOSE. See the above copyright notices for more information.
=========================================================================*/
#ifndef _cxxClassType_h
#define _cxxClassType_h
#include "cxxCvQualifiedType.h"
#include <vector>
namespace _cxx_
{
class _cxx_EXPORT ClassType;
/**
* A vector of ClassType pointers.
*/
typedef std::vector<const ClassType*> ClassTypes;
/**
* Represents a C++ class type. This could have been produced by a
* class, struct, union, template full specialization, or template
* instantiation.
*/
class _cxx_EXPORT ClassType: public Type
{
public:
typedef ClassType Self;
virtual RepresentationType GetRepresentationType() const;
static ClassType* SafeDownCast(Type*);
static const ClassType* SafeDownCast(const Type*);
bool IsCopyable() const;
void MergeClassInformation(bool, const ClassTypes&);
String GetName() const;
ClassTypes::const_iterator ParentsBegin() const;
ClassTypes::const_iterator ParentsEnd() const;
void GetAllSuperclasses(ClassTypes&) const;
bool IsSubclassOf(const ClassType*) const;
virtual String GenerateName(const String&, bool, bool) const;
protected:
ClassType(const String&, bool isCopyable, const ClassTypes&);
ClassType(const Self&): Type() {}
void operator=(const Self&) {}
virtual ~ClassType() {}
private:
/**
* The name of the class.
*/
String m_Name;
/**
* Flag for whether the class is copyable.
*/
bool m_Copyable;
/**
* The immediate public superclasses of this class.
* A pointer or reference ot this class can be cast up to these
* types.
*/
ClassTypes m_Parents;
/**
* The list of types from which this class can construct.
*/
CvQualifiedTypes m_ConversionByConstructor;
/**
* The list of types to which this class can convert by type conversion
* operator.
*/
CvQualifiedTypes m_ConversionOperators;
friend class TypeSystem;
};
} // namespace _cxx_
#endif
|