| Anjuta Developers Reference Manual | ||||
|---|---|---|---|---|
#include <libanjuta/interfaces/ianjuta-symbol.h> #define IANJUTA_TYPE_SYMBOL_FIELD #define IANJUTA_TYPE_SYMBOL_TYPE #define IANJUTA_SYMBOL_ERROR IAnjutaSymbol; IAnjutaSymbolIface; enum IAnjutaSymbolField; enum IAnjutaSymbolType; GType ianjuta_symbol_type_get_type (void); GQuark ianjuta_symbol_error_quark (void); GType ianjuta_symbol_get_type (void); const gchar* ianjuta_symbol_get_args (IAnjutaSymbol *obj, GError **err); const gchar* ianjuta_symbol_get_extra_info_string (IAnjutaSymbol *obj, IAnjutaSymbolField sym_info, GError **err); GFile* ianjuta_symbol_get_file (IAnjutaSymbol *obj, GError **err); const GdkPixbuf* ianjuta_symbol_get_icon (IAnjutaSymbol *obj, GError **err); gint ianjuta_symbol_get_id (IAnjutaSymbol *obj, GError **err); gulong ianjuta_symbol_get_line (IAnjutaSymbol *obj, GError **err); const gchar* ianjuta_symbol_get_name (IAnjutaSymbol *obj, GError **err); IAnjutaSymbolType ianjuta_symbol_get_sym_type (IAnjutaSymbol *obj, GError **err); gboolean ianjuta_symbol_is_local (IAnjutaSymbol *obj, GError **err);
typedef struct {
GTypeInterface g_iface;
const gchar * (*get_args) (IAnjutaSymbol *obj, GError **err);
const gchar * (*get_extra_info_string) (IAnjutaSymbol *obj, IAnjutaSymbolField sym_info, GError **err);
GFile * (*get_file) (IAnjutaSymbol *obj, GError **err);
const GdkPixbuf * (*get_icon) (IAnjutaSymbol *obj, GError **err);
gint (*get_id) (IAnjutaSymbol *obj, GError **err);
gulong (*get_line) (IAnjutaSymbol *obj, GError **err);
const gchar * (*get_name) (IAnjutaSymbol *obj, GError **err);
IAnjutaSymbolType (*get_sym_type) (IAnjutaSymbol *obj, GError **err);
gboolean (*is_local) (IAnjutaSymbol *obj, GError **err);
} IAnjutaSymbolIface;
typedef enum {
IANJUTA_SYMBOL_FIELD_SIMPLE = 1,
IANJUTA_SYMBOL_FIELD_FILE_PATH = 2,
IANJUTA_SYMBOL_FIELD_IMPLEMENTATION = 4,
IANJUTA_SYMBOL_FIELD_ACCESS = 8,
IANJUTA_SYMBOL_FIELD_KIND = 16,
IANJUTA_SYMBOL_FIELD_TYPE = 32,
IANJUTA_SYMBOL_FIELD_TYPE_NAME = 64,
IANJUTA_SYMBOL_FIELD_LANGUAGE = 128,
IANJUTA_SYMBOL_FIELD_FILE_IGNORE = 256,
IANJUTA_SYMBOL_FIELD_FILE_INCLUDE = 512,
IANJUTA_SYMBOL_FIELD_PROJECT_NAME = 1024,
IANJUTA_SYMBOL_FIELD_WORKSPACE_NAME = 2048
} IAnjutaSymbolField;
typedef enum {
IANJUTA_SYMBOL_TYPE_UNDEF = 1,
IANJUTA_SYMBOL_TYPE_CLASS = 2,
IANJUTA_SYMBOL_TYPE_ENUM = 4,
IANJUTA_SYMBOL_TYPE_ENUMERATOR = 8,
IANJUTA_SYMBOL_TYPE_FIELD = 16,
IANJUTA_SYMBOL_TYPE_FUNCTION = 32,
IANJUTA_SYMBOL_TYPE_INTERFACE = 64,
IANJUTA_SYMBOL_TYPE_MEMBER = 128,
IANJUTA_SYMBOL_TYPE_METHOD = 256,
IANJUTA_SYMBOL_TYPE_NAMESPACE = 512,
IANJUTA_SYMBOL_TYPE_PACKAGE = 1024,
IANJUTA_SYMBOL_TYPE_PROTOTYPE = 2048,
IANJUTA_SYMBOL_TYPE_STRUCT = 4096,
IANJUTA_SYMBOL_TYPE_TYPEDEF = 8192,
IANJUTA_SYMBOL_TYPE_UNION = 16384,
IANJUTA_SYMBOL_TYPE_VARIABLE = 32768,
IANJUTA_SYMBOL_TYPE_EXTERNVAR = 65536,
IANJUTA_SYMBOL_TYPE_MACRO = 131072,
IANJUTA_SYMBOL_TYPE_MACRO_WITH_ARG = 262144,
IANJUTA_SYMBOL_TYPE_FILE = 524288,
IANJUTA_SYMBOL_TYPE_OTHER = 1048576,
IANJUTA_SYMBOL_TYPE_MAX = 2097151
} IAnjutaSymbolType;
const gchar* ianjuta_symbol_get_args (IAnjutaSymbol *obj, GError **err);
If symbol is a function then this will return a string with the args.
|
Self |
|
Error propagation and reporting. |
Returns : |
args as string or NULL |
const gchar* ianjuta_symbol_get_extra_info_string (IAnjutaSymbol *obj, IAnjutaSymbolField sym_info, GError **err);
|
Self |
|
Just one FIELD_* per time. It is NOT possible to pass something like FIELD_1 | FIELD_2 | ... |
|
Error propagation and reporting. |
Returns : |
GFile* ianjuta_symbol_get_file (IAnjutaSymbol *obj, GError **err);
|
Self |
|
Error propagation and reporting. |
Returns : |
The file of the symbol |
const GdkPixbuf* ianjuta_symbol_get_icon (IAnjutaSymbol *obj, GError **err);
You *need* a symbol with FIELD_ACCESS | FIELD_KIND enabled attribute. e.g. use ianjuta_symbol_manager_search passing FIELD_ACCESS | FIELD_KIND as info_fields.
|
Self |
|
Error propagation and reporting. |
Returns : |
a Pixbuf icon representing the symbol. |
gint ianjuta_symbol_get_id (IAnjutaSymbol *obj, GError **err);
An unique identifier for the symbol: pay attention that when engine re-parse the files this id may change.
|
Self |
|
Error propagation and reporting. |
Returns : |
0 on error. |
gulong ianjuta_symbol_get_line (IAnjutaSymbol *obj, GError **err);
|
Self |
|
Error propagation and reporting. |
Returns : |
Line of the file in which the symbol is declared.a |
const gchar* ianjuta_symbol_get_name (IAnjutaSymbol *obj, GError **err);
|
Self |
|
Error propagation and reporting. |
Returns : |
The name of the symbol |
IAnjutaSymbolType ianjuta_symbol_get_sym_type (IAnjutaSymbol *obj, GError **err);
You can obtain an IAnjutaSymbolType of the symbol.
To have a string representation see ianjuta_symbol_get_extra_info_string().
You *need* a symbol with FIELD_TYPE enabled attribute. e.g. use ianjuta_symbol_manager_search
passing FIELD_TYPE as info_fields.
|
Self |
|
Error propagation and reporting. |
Returns : |
a IAnjutaSymbolType |
gboolean ianjuta_symbol_is_local (IAnjutaSymbol *obj, GError **err);
Is the symbol a static (private) one?
|
Self |
|
Error propagation and reporting. |
Returns : |
TRUE if the symbol is local |