Top | ![]() |
![]() |
![]() |
![]() |
IdeSymbol * | ide_symbol_ref () |
void | ide_symbol_unref () |
IdeSymbolKind | ide_symbol_get_kind () |
IdeSymbolFlags | ide_symbol_get_flags () |
const gchar * | ide_symbol_get_name () |
IdeSourceLocation * | ide_symbol_get_canonical_location () |
IdeSourceLocation * | ide_symbol_get_declaration_location () |
IdeSourceLocation * | ide_symbol_get_definition_location () |
IdeSymbol * | ide_symbol_new () |
IdeSymbol * | ide_symbol_new_from_variant () |
GVariant * | ide_symbol_to_variant () |
const gchar * | ide_symbol_kind_get_icon_name () |
IdeSourceLocation *
ide_symbol_get_canonical_location (IdeSymbol *self
);
Gets the location of the symbols "implementation". In C/C++ languages, you can have multiple declarations by only a single implementation.
IdeSourceLocation *
ide_symbol_get_declaration_location (IdeSymbol *self
);
The location of a symbol equates to the declaration of the symbol. In C and C++, this would mean the header location (or forward declaration in a C file before the implementation).
If the symbol provider did not register this information, NULL
will be returned.
IdeSourceLocation *
ide_symbol_get_definition_location (IdeSymbol *self
);
Like ide_symbol_get_declaration_location()
but gets the first declaration (only one can be
the definition).
IdeSymbol * ide_symbol_new (const gchar *name
,IdeSymbolKind kind
,IdeSymbolFlags flags
,IdeSourceLocation *declaration_location
,IdeSourceLocation *definition_location
,IdeSourceLocation *canonical_location
);
GVariant *
ide_symbol_to_variant (const IdeSymbol *self
);
This converts the symbol to a GVariant that is suitable for passing across an IPC boundary.
This function will never return a floating reference.