Geany dev
Data Structures | Typedefs | Functions
tm_workspace.h File Reference

The TMWorkspace structure is meant to be used as a singleton to store application wide tag information. More...

Data Structures

struct  TMWorkspace
 The Tag Manager Workspace. More...
 

Typedefs

typedef struct TMWorkspace TMWorkspace
 The Tag Manager Workspace. More...
 

Functions

void tm_workspace_add_source_file (TMSourceFile *source_file)
 Adds a source file to the workspace, parses it and updates the workspace tags. More...
 
void tm_workspace_add_source_files (GPtrArray *source_files)
 Adds multiple source files to the workspace and updates the workspace tag arrays. More...
 
void tm_workspace_remove_source_file (TMSourceFile *source_file)
 Removes a source file from the workspace if it exists. More...
 
void tm_workspace_remove_source_files (GPtrArray *source_files)
 Removes multiple source files from the workspace and updates the workspace tag arrays. More...
 

Detailed Description

The TMWorkspace structure is meant to be used as a singleton to store application wide tag information.

The workspace is intended to contain a list of global tags and a set of individual source files.

Typedef Documentation

◆ TMWorkspace

typedef struct TMWorkspace TMWorkspace

The Tag Manager Workspace.

This is a singleton object containing a list of individual source files. There is also a global tag list which can be loaded or created. This contains global tags gleaned from /usr/include, etc. and should be used for autocompletion, calltips, etc.

Function Documentation

◆ tm_workspace_add_source_file()

void tm_workspace_add_source_file ( TMSourceFile source_file)

Adds a source file to the workspace, parses it and updates the workspace tags.

Parameters
source_fileThe source file to add to the workspace.

◆ tm_workspace_add_source_files()

void tm_workspace_add_source_files ( GPtrArray *  source_files)

Adds multiple source files to the workspace and updates the workspace tag arrays.

This is more efficient than calling tm_workspace_add_source_file() and tm_workspace_update_source_file() separately for each of the files.

Parameters
source_files (element-type: TMSourceFile) The source files to be added to the workspace.

◆ tm_workspace_remove_source_file()

void tm_workspace_remove_source_file ( TMSourceFile source_file)

Removes a source file from the workspace if it exists.

This function also removes the tags belonging to this file from the workspace. To completely free the TMSourceFile pointer call tm_source_file_free() on it.

Parameters
source_filePointer to the source file to be removed.

◆ tm_workspace_remove_source_files()

void tm_workspace_remove_source_files ( GPtrArray *  source_files)

Removes multiple source files from the workspace and updates the workspace tag arrays.

This is more efficient than calling tm_workspace_remove_source_file() separately for each of the files. To completely free the TMSourceFile pointers call tm_source_file_free() on each of them.

Parameters
source_files (element-type: TMSourceFile) The source files to be removed from the workspace.