File indexing completed on 2024-04-28 15:52:49
0001 /* 0002 SPDX-FileCopyrightText: 2009 Milian Wolff <mail@milianw.de> 0003 0004 SPDX-License-Identifier: LGPL-2.0-or-later 0005 */ 0006 0007 #include "structuretype.h" 0008 0009 #include <language/duchain/types/typeregister.h> 0010 0011 using namespace KDevelop; 0012 0013 namespace Php 0014 { 0015 REGISTER_TYPE(StructureType); 0016 0017 StructureType::StructureType(const StructureType& rhs) 0018 : KDevelop::StructureType(copyData<StructureType>(*rhs.d_func())) 0019 { 0020 } 0021 0022 StructureType::StructureType(StructureTypeData& data) 0023 : KDevelop::StructureType(data) 0024 { 0025 } 0026 0027 StructureType::StructureType() 0028 : KDevelop::StructureType(createData<StructureType>()) 0029 { 0030 } 0031 0032 QString StructureType::toString() const 0033 { 0034 if ( d_func()->prettyName.isEmpty() ) { 0035 return KDevelop::StructureType::toString(); 0036 } else { 0037 return prettyName().str(); 0038 } 0039 } 0040 0041 KDevelop::IndexedString StructureType::prettyName() const 0042 { 0043 return d_func()->prettyName; 0044 } 0045 0046 void StructureType::setPrettyName( const KDevelop::IndexedString& name ) 0047 { 0048 d_func_dynamic()->prettyName = name; 0049 } 0050 0051 KDevelop::AbstractType* StructureType::clone() const 0052 { 0053 return new StructureType(*this); 0054 } 0055 0056 uint StructureType::hash() const 0057 { 0058 return 4 * KDevelop::StructureType::hash(); 0059 } 0060 0061 }