• Skip to content
  • Skip to link menu
Trinity API Reference
  • Trinity API Reference
  • TDevelop Interfaces Library
 

TDevelop Interfaces Library

Public Types | Public Member Functions | Protected Member Functions | List of all members
CodeModelItem Class Reference

#include <codemodel.h>

Inheritance diagram for CodeModelItem:
ArgumentModel ClassModel EnumeratorModel EnumModel FunctionModel TypeAliasModel VariableModel NamespaceModel FunctionDefinitionModel FileModel

Public Types

enum  Kind {
  File, Namespace, Class, Function,
  Variable, Argument, FunctionDefinition, Enum,
  Enumerator, TypeAlias, Custom = 1000
}
 
enum  Access { Public, Protected, Private }
 
typedef ItemDom Ptr
 

Public Member Functions

void update (const CodeModelItem *i)
 
bool canUpdate (const CodeModelItem *i) const
 
virtual ~CodeModelItem ()
 
int kind () const
 
void setKind (int kind)
 
TQString name () const
 
TQString comment () const
 
void setComment (TQString comment)
 
void setName (const TQString &name)
 
FileDom file ()
 
const FileDom file () const
 
TQString fileName () const
 
void setFileName (const TQString &fileName)
 
void getStartPosition (int *line, int *col) const
 
void setStartPosition (int line, int col)
 
void getEndPosition (int *line, int *col) const
 
void setEndPosition (int line, int col)
 
virtual bool isFile () const
 
virtual bool isNamespace () const
 
virtual bool isClass () const
 
virtual bool isFunction () const
 
virtual bool isFunctionDefinition () const
 
virtual bool isVariable () const
 
virtual bool isArgument () const
 
virtual bool isEnum () const
 
virtual bool isEnumerator () const
 
virtual bool isTypeAlias () const
 
virtual bool isCustom () const
 
virtual bool isTemplateable () const
 
virtual void read (TQDataStream &stream)
 
virtual void write (TQDataStream &stream) const
 
virtual void dump (std::ostream &file, bool recurse=false, TQString Info="")
 
CodeModel * codeModel ()
 
const CodeModel * codeModel () const
 

Protected Member Functions

 CodeModelItem (int kind, CodeModel *model)
 

Detailed Description

Item in code model (symbol store).

Item is a symbol in a store. Code model provides several predefined classes for predefined item types (files, namespaces, classes, functions and function definitions, variables, arguments, enums and enumerators, type aliases.

Instances of this class should be created using CodeModel::create method but usually it is better to create instances of derived classes like ClassModel, NamespaceModel, FileModel, etc.

Definition at line 461 of file codemodel.h.

Member Typedef Documentation

◆ Ptr

typedef ItemDom CodeModelItem::Ptr

A definition of safe pointer to the code model item.

Definition at line 465 of file codemodel.h.

Member Enumeration Documentation

◆ Access

enum CodeModelItem::Access

An access to the code model item.

Enumerator
Public 

Public.

Protected 

Protected.

Private 

Private.

Definition at line 486 of file codemodel.h.

◆ Kind

enum CodeModelItem::Kind

A type of a code model item.

Enumerator
File 

File.

Namespace 

Namespace.

Class 

Class.

Function 

Function or class method.

Variable 

Variable.

Argument 

Function or method parameter.

FunctionDefinition 

Function definition.

Enum 

Enum.

Enumerator 

Enumerator - a member of an Enum (example:

enum Type { A, B, C}

Type will be an Enum; A, B and C - Enumerators.

TypeAlias 

Type alias (aka typedef in c++).

Custom 

Custom model items should have type greater than 1000.

Definition at line 468 of file codemodel.h.

Constructor & Destructor Documentation

◆ CodeModelItem()

CodeModelItem::CodeModelItem ( int  kind,
CodeModel *  model 
)
protected

Constructor.

Parameters
kindThe type, see also CodeModelItem::Kind.
modelCode model which stores this item.

Definition at line 581 of file codemodel.cpp.

◆ ~CodeModelItem()

CodeModelItem::~CodeModelItem ( )
virtual

Destructor.

Definition at line 591 of file codemodel.cpp.

Member Function Documentation

◆ codeModel() [1/2]

CodeModel* CodeModelItem::codeModel ( )
inline
Returns
The code model for this item.

Definition at line 598 of file codemodel.h.

◆ codeModel() [2/2]

const CodeModel* CodeModelItem::codeModel ( ) const
inline
Note
This is a const version provided for convenience.
Returns
The code model for this item

Definition at line 602 of file codemodel.h.

◆ dump()

void CodeModelItem::dump ( std::ostream &  file,
bool  recurse = false,
TQString  Info = "" 
)
virtual

just to get rid of the warning

Reimplemented in TypeAliasModel, EnumeratorModel, EnumModel, VariableModel, and ArgumentModel.

Definition at line 165 of file codemodel.cpp.

◆ file() [1/2]

FileDom CodeModelItem::file ( )

Gets the file of the item.

Returns
The FileDom object for the item.

Definition at line 610 of file codemodel.cpp.

◆ file() [2/2]

const FileDom CodeModelItem::file ( ) const

Gets the file of the item This is a const version provided for convenience.

Returns
The FileDom object for the item.

Definition at line 605 of file codemodel.cpp.

◆ fileName()

TQString CodeModelItem::fileName ( ) const
Returns
The filename of the item.

Definition at line 615 of file codemodel.cpp.

◆ getEndPosition()

void CodeModelItem::getEndPosition ( int *  line,
int *  col 
) const

Get the end position of the item.

Parameters
lineWill be set to the line number of the items end position. Pass 0 if line number is not necessary.
colWill be set to the column number of the items end position. Pass 0 if column number is not necessary.

Definition at line 637 of file codemodel.cpp.

◆ getStartPosition()

void CodeModelItem::getStartPosition ( int *  line,
int *  col 
) const

Gets the start position of the item.

Parameters
lineWill be set to the line number of the items start position. Pass 0 if line number is not necessary.
colWill be set to the column number of the items start position. Pass 0 if column number is not necessary.

Definition at line 625 of file codemodel.cpp.

◆ isArgument()

virtual bool CodeModelItem::isArgument ( ) const
inlinevirtual
Returns
true if an item is an ArgumentModel.

Reimplemented in ArgumentModel.

Definition at line 576 of file codemodel.h.

◆ isClass()

virtual bool CodeModelItem::isClass ( ) const
inlinevirtual
Returns
true if an item is a ClassModel.

Reimplemented in NamespaceModel, and ClassModel.

Definition at line 568 of file codemodel.h.

◆ isCustom()

virtual bool CodeModelItem::isCustom ( ) const
inlinevirtual
Returns
true if an item is a custom item.

Definition at line 584 of file codemodel.h.

◆ isEnum()

virtual bool CodeModelItem::isEnum ( ) const
inlinevirtual
Returns
true if an item is a EnumModel.

Reimplemented in EnumModel.

Definition at line 578 of file codemodel.h.

◆ isEnumerator()

virtual bool CodeModelItem::isEnumerator ( ) const
inlinevirtual
Returns
true if an item is a EnumeratorModel.

Reimplemented in EnumeratorModel.

Definition at line 580 of file codemodel.h.

◆ isFile()

virtual bool CodeModelItem::isFile ( ) const
inlinevirtual
Returns
true if an item is a FileModel.

Reimplemented in FileModel.

Definition at line 564 of file codemodel.h.

◆ isFunction()

virtual bool CodeModelItem::isFunction ( ) const
inlinevirtual
Returns
true if an item is a FunctionModel.

Reimplemented in FunctionModel.

Definition at line 570 of file codemodel.h.

◆ isFunctionDefinition()

virtual bool CodeModelItem::isFunctionDefinition ( ) const
inlinevirtual
Returns
true if an item is a FileDefinitionModel.

Reimplemented in FunctionDefinitionModel.

Definition at line 572 of file codemodel.h.

◆ isNamespace()

virtual bool CodeModelItem::isNamespace ( ) const
inlinevirtual
Returns
true if an item is a NamespaceModel.

Reimplemented in NamespaceModel.

Definition at line 566 of file codemodel.h.

◆ isTypeAlias()

virtual bool CodeModelItem::isTypeAlias ( ) const
inlinevirtual
Returns
true if an item is a TypeAliasModel.

Reimplemented in TypeAliasModel.

Definition at line 582 of file codemodel.h.

◆ isVariable()

virtual bool CodeModelItem::isVariable ( ) const
inlinevirtual
Returns
true if an item is a VariableModel.

Reimplemented in VariableModel.

Definition at line 574 of file codemodel.h.

◆ kind()

int CodeModelItem::kind ( ) const
inline
Returns
The type (kind) of item.

Definition at line 506 of file codemodel.h.

◆ name()

TQString CodeModelItem::name ( ) const
Returns
The name of the item.

Definition at line 595 of file codemodel.cpp.

◆ read()

void CodeModelItem::read ( TQDataStream &  stream)
virtual

Reads an item from the stream.

Parameters
streamThe stream to read from.

Reimplemented in TypeAliasModel, EnumeratorModel, EnumModel, VariableModel, FunctionModel, ArgumentModel, FileModel, NamespaceModel, and ClassModel.

Definition at line 1285 of file codemodel.cpp.

◆ setEndPosition()

void CodeModelItem::setEndPosition ( int  line,
int  col 
)

Set the end position of the item.

Parameters
lineLine number.
colColumn number.

Definition at line 643 of file codemodel.cpp.

◆ setFileName()

void CodeModelItem::setFileName ( const TQString &  fileName)

Sets the filename of the item.

Parameters
fileNameThe file name.

Definition at line 620 of file codemodel.cpp.

◆ setKind()

void CodeModelItem::setKind ( int  kind)
inline

Sets the type (kind) of item.

Parameters
kindThe type, see also CodeModelItem::Kind.

Definition at line 510 of file codemodel.h.

◆ setName()

void CodeModelItem::setName ( const TQString &  name)

Sets the name of the item.

Parameters
nameThe name.

Definition at line 600 of file codemodel.cpp.

◆ setStartPosition()

void CodeModelItem::setStartPosition ( int  line,
int  col 
)

Sets the start position of the item.

Parameters
lineLine number.
colColumn number.

Definition at line 631 of file codemodel.cpp.

◆ write()

void CodeModelItem::write ( TQDataStream &  stream) const
virtual

Writes an item to the stream.

Parameters
streamThe stream to write to.

Reimplemented in TypeAliasModel, EnumeratorModel, EnumModel, VariableModel, FunctionModel, ArgumentModel, FileModel, NamespaceModel, and ClassModel.

Definition at line 1304 of file codemodel.cpp.


The documentation for this class was generated from the following files:
  • codemodel.h
  • codemodel.cpp

TDevelop Interfaces Library

Skip menu "TDevelop Interfaces Library"
  • Main Page
  • Namespace List
  • Class Hierarchy
  • Alphabetical List
  • Class List
  • File List
  • Namespace Members
  • Class Members
  • Related Pages

TDevelop Interfaces Library

Skip menu "TDevelop Interfaces Library"
  • buildtools
  •   lib
  •     base
  •     parsers
  •       autotools
  •       qmake
  •     widgets
  •   api
  • languages
  •   lib
  •     debugger
  •     designer_integration
  •     interfaces
  • lib
  •   catalog
  •   interfaces
  •     extensions
  •     external
  •     extras
  •   util
  •   widgets
  •     propeditor
  • parts
  •   documentation
  •     interfaces
  • src
  •   profileengine
  •     lib
Generated for TDevelop Interfaces Library by doxygen 1.8.13
This website is maintained by Timothy Pearson.