Puma Reference Manual Puma: Puma::CSemDeclSpecs Class Reference



Puma::CSemDeclSpecs Class Reference

Class for analysing a sequence of declaration specifiers. More...

#include <Puma/CSemDeclSpecs.h>

List of all members.

Public Member Functions

 CSemDeclSpecs (ErrorSink *es, CT_DeclSpecSeq *dss, bool support_implicit_int=false)
 Constructor.
 ~CSemDeclSpecs ()
 Destructor.
CTypeInfomake_type () const
 Get a copy of the resulting type.
CT_DeclSpecSeqDeclSpecSeq () const
 Get the declaration specifier sequence.
bool declared (CT_PrimDeclSpec::Type dst) const
 Check if the given declaration specifier was declared.
bool defClass () const
 Check if a class was defined in the declaration specifier sequence.
bool defUnion () const
 Check if an union was defined in the declaration specifier sequence.
bool defEnum () const
 Check if an enumeration was defined in the declaration specifier sequence.

Detailed Description

Class for analysing a sequence of declaration specifiers.

The result of the analysis is a type, i.e. the type of the declared entity (function, object, etc).


Constructor & Destructor Documentation

Puma::CSemDeclSpecs::CSemDeclSpecs ( ErrorSink es,
CT_DeclSpecSeq dss,
bool  support_implicit_int = false 
)

Constructor.

Parameters:
es The error stream on which to report errors.
dss The declaration specifier sequence to be analysed.
support_implicit_int True if implicit type int shall be supported.
Puma::CSemDeclSpecs::~CSemDeclSpecs (  )  [inline]

Destructor.

Destroys the created type.


Member Function Documentation

bool Puma::CSemDeclSpecs::declared ( CT_PrimDeclSpec::Type  dst  )  const [inline]

Check if the given declaration specifier was declared.

Parameters:
dst The declaration specifier type.
CT_DeclSpecSeq * Puma::CSemDeclSpecs::DeclSpecSeq (  )  const [inline]

Get the declaration specifier sequence.

bool Puma::CSemDeclSpecs::defClass (  )  const [inline]

Check if a class was defined in the declaration specifier sequence.

bool Puma::CSemDeclSpecs::defEnum (  )  const [inline]

Check if an enumeration was defined in the declaration specifier sequence.

bool Puma::CSemDeclSpecs::defUnion (  )  const [inline]

Check if an union was defined in the declaration specifier sequence.

CTypeInfo * Puma::CSemDeclSpecs::make_type (  )  const [inline]

Get a copy of the resulting type.

Returns:
The copy of the type. Has to be destroyed by the caller.



Puma Reference Manual. Created on 24 Nov 2009.