### Class

# Foundry Symbol

#### Description [src]

    abstract class Foundry.Symbol : GObject.Object
    {
      /* No available fields */
    }

Abstract base class for representing symbols.

FoundrySymbol provides the core interface for representing code symbols such as functions, classes, variables, and other identifiers. Concrete implementations handle specific symbol types and provide specialized functionality for symbol navigation, documentation, and manipulation.

#### Ancestors

- GObject

#### Instance methods

###### foundry_symbol_dup_icon

Gets the icon representing the symbol.

since: 1.1

###### foundry_symbol_dup_locator

Gets the locator to find the location of the symbol.

since: 1.1

###### foundry_symbol_dup_name

Gets the name of the symbol.

###### foundry_symbol_find_parent

Find the parent symbol, if any.

###### foundry_symbol_has_children

Gets if the symbol can have children even if it is not yet known if it does have any children.

since: 1.1

###### foundry_symbol_list_children

List all of the children of this symbol.

###### foundry_symbol_list_to_root

Asynchronously populates a `GListModel` of `FoundrySymbol` starting from this symbol to the root symbol by following `foundry_symbol_find_parent()` until there are no more parents.

##### Methods inherited from GObject (43)

Please see GObject for a full list of methods.

#### Properties

###### Foundry.Symbol:icon

No description available.

###### Foundry.Symbol:locator

No description available.

###### Foundry.Symbol:name

No description available.

#### Signals

##### Signals inherited from GObject (1)

###### GObject::notify

The notify signal is emitted on an object when one of its properties has its value set through g_object_set_property(), g_object_set(), et al.

#### Class structure

    struct FoundrySymbolClass {
      GObjectClass parent_class;
      char* (* dup_name) (
        FoundrySymbol* self
      );
      DexFuture* (* find_parent) (
        FoundrySymbol* self
      );
      DexFuture* (* list_children) (
        FoundrySymbol* self
      );
      gboolean (* has_children) (
        FoundrySymbol* self
      );
      FoundrySymbolLocator* (* dup_locator) (
        FoundrySymbol* self
      );
      GIcon* (* dup_icon) (
        FoundrySymbol* self
      );

    }

No description available.

###### Class members

`parent_class: GObjectClass`

  No description available.

`dup_name: char* (* dup_name) ( FoundrySymbol* self )`

  No description available.

`find_parent: DexFuture* (* find_parent) ( FoundrySymbol* self )`

  No description available.

`list_children: DexFuture* (* list_children) ( FoundrySymbol* self )`

  No description available.

`has_children: gboolean (* has_children) ( FoundrySymbol* self )`

  No description available.

`dup_locator: FoundrySymbolLocator* (* dup_locator) ( FoundrySymbol* self )`

  No description available.

`dup_icon: GIcon* (* dup_icon) ( FoundrySymbol* self )`

  No description available.

#### Virtual methods

###### Foundry.SymbolClass.dup_icon

Gets the icon representing the symbol.

since: 1.1

###### Foundry.SymbolClass.dup_locator

Gets the locator to find the location of the symbol.

since: 1.1

###### Foundry.SymbolClass.dup_name

Gets the name of the symbol.

###### Foundry.SymbolClass.find_parent

Find the parent symbol, if any.

###### Foundry.SymbolClass.has_children

Gets if the symbol can have children even if it is not yet known if it does have any children.

since: 1.1

###### Foundry.SymbolClass.list_children

List all of the children of this symbol.