1 /* 2 SPDX-FileCopyrightText: 2002-2005 Roberto Raggi <roberto@kdevelop.org> 3 SPDX-FileCopyrightText: 2006 Adam Treat <treat@kde.org> 4 SPDX-FileCopyrightText: 2006 Hamish Rodda <rodda@kde.org> 5 SPDX-FileCopyrightText: 2007-2008 David Nolden <david.nolden.kdevelop@art-master.de> 6 7 SPDX-License-Identifier: LGPL-2.0-only 8 */ 9 10 #ifndef KDEVPLATFORM_CLASSMEMBERDECLARATIONDATA_H 11 #define KDEVPLATFORM_CLASSMEMBERDECLARATIONDATA_H 12 13 #include "declarationdata.h" 14 #include <language/languageexport.h> 15 16 namespace KDevelop { 17 class KDEVPLATFORMLANGUAGE_EXPORT ClassMemberDeclarationData 18 : public DeclarationData 19 { 20 public: 21 ClassMemberDeclarationData(); 22 ClassMemberDeclarationData(const ClassMemberDeclarationData& rhs) = default; 23 24 Declaration::AccessPolicy m_accessPolicy; 25 26 bool m_isStatic : 1; 27 bool m_isAuto : 1; 28 bool m_isFriend : 1; 29 bool m_isRegister : 1; 30 bool m_isExtern : 1; 31 bool m_isMutable : 1; 32 33 /// Stores bitWidth in bits or -1 if unknown. 34 int16_t m_bitWidth; 35 36 /// Stores bitOffsetOf in bits or -1 if unknown. 37 int64_t m_bitOffsetOf; 38 }; 39 } 40 41 #endif 42