mirror of
https://github.com/eclipse-openvehicle-api/openvehicle-api.git
synced 2026-04-21 11:38:16 +00:00
45 lines
1.5 KiB
C++
45 lines
1.5 KiB
C++
/********************************************************************************
|
|
* Copyright (c) 2025-2026 ZF Friedrichshafen AG
|
|
*
|
|
* This program and the accompanying materials are made available under the
|
|
* terms of the Apache License Version 2.0 which is available at
|
|
* https://www.apache.org/licenses/LICENSE-2.0
|
|
*
|
|
* SPDX-License-Identifier: Apache-2.0
|
|
*
|
|
* Contributors:
|
|
* Erik Verhoeven - initial API and implementation
|
|
********************************************************************************/
|
|
|
|
#include "variable_entity.h"
|
|
#include "typedef_entity.h"
|
|
#include "../exception.h"
|
|
|
|
CVariableEntity::CVariableEntity(const CContextPtr& rptrContext, CEntityPtr ptrParent, bool bConst, bool bAnonymous) :
|
|
CDeclarationEntity(rptrContext, ptrParent), m_bConst(bConst), m_bAnonymous(bAnonymous)
|
|
{}
|
|
|
|
CVariableEntity::CVariableEntity(const CContextPtr& rptrContext, CEntityPtr ptrParent, const CTokenList& rlstTokenList,
|
|
bool bConst, bool bAnonymous) :
|
|
CDeclarationEntity(rptrContext, ptrParent, rlstTokenList), m_bConst(bConst), m_bAnonymous(bAnonymous)
|
|
{}
|
|
|
|
std::string CVariableEntity::GetDeclTypeStr(bool bResolveTypedef) const
|
|
{
|
|
if (GetTypeEntity())
|
|
return GetTypeEntity()->GetDeclTypeStr(bResolveTypedef);
|
|
else
|
|
return DeclTypeToString(GetBaseType());
|
|
}
|
|
|
|
void CVariableEntity::Process()
|
|
{
|
|
CDeclarationEntity::Process();
|
|
|
|
// TODO: Const variables cannot contain:
|
|
// - dynamic arrays when no assignment is there
|
|
// - interfaces
|
|
// - structure or unions with unassigned dynamic arrays or interfaces
|
|
}
|
|
|