## IdeSymbolResolver IdeSymbolResolver |

## Functions

#define | IDE_TYPE_SYMBOL_RESOLVER
void | ide_symbol_resolver_lookup_symbol_async ()
IdeSymbol * | ide_symbol_resolver_lookup_symbol_finish ()
void | ide_symbol_resolver_get_symbols_async ()
GPtrArray * | ide_symbol_resolver_get_symbols_finish ()

## Types and Values

struct | IdeSymbolResolverClass
| IdeSymbolResolver

## Object Hierarchy

        GObject
        ╰── IdeObject
            ╰── IdeSymbolResolver

## Description

## Functions

### IDE_TYPE_SYMBOL_RESOLVER

    #define IDE_TYPE_SYMBOL_RESOLVER (ide_symbol_resolver_get_type())

### ide_symbol_resolver_lookup_symbol_async ()

    void
    ide_symbol_resolver_lookup_symbol_async
                                   (IdeSymbolResolver *self,
                                    IdeSourceLocation *location,
                                    GCancellable *cancellable,
                                    GAsyncReadyCallback callback,
                                    gpointer user_data);

Asynchronously requests that `self` determine the symbol existing at the source location denoted by `self` . `callback` should call `ide_symbol_resolver_lookup_symbol_finish()` to retrieve the result.

#### Parameters

self | An IdeSymbolResolver. |
location | An IdeSourceLocation. |
cancellable | A GCancellable or `NULL`. | [allow-none]
callback | A callback to execute upon completion. | [scope async]
user_data | user data for `callback` . |

### ide_symbol_resolver_lookup_symbol_finish ()

    IdeSymbol *
    ide_symbol_resolver_lookup_symbol_finish
                                   (IdeSymbolResolver *self,
                                    GAsyncResult *result,
                                    GError **error);

Completes an asynchronous call to lookup a symbol using `ide_symbol_resolver_lookup_symbol_async()`.

#### Parameters

self | An IdeSymbolResolver. |
result | A GAsyncResult provided to the callback. |
error | A location for an `error` or `NULL`. | [out]

#### Returns

An IdeSymbol if successful; otherwise `NULL`.

[transfer full][nullable]

### ide_symbol_resolver_get_symbols_async ()

    void
    ide_symbol_resolver_get_symbols_async (IdeSymbolResolver *self,
                                           IdeFile *file,
                                           GCancellable *cancellable,
                                           GAsyncReadyCallback callback,
                                           gpointer user_data);

### ide_symbol_resolver_get_symbols_finish ()

    GPtrArray *
    ide_symbol_resolver_get_symbols_finish
                                   (IdeSymbolResolver *self,
                                    GAsyncResult *result,
                                    GError **error);

#### Parameters

self | An IdeSymbolResolver. |
result | A GAsyncResult. |
error | A location for a GError or `NULL`. | [out]

#### Returns

A GPtrArray if successful.

[transfer container][element-type IdeSymbol*]

## Types and Values

### struct IdeSymbolResolverClass

    struct IdeSymbolResolverClass {
      IdeObjectClass parent;

      void       (*lookup_symbol_async)  (IdeSymbolResolver    *self,
                                          IdeSourceLocation    *location,
                                          GCancellable         *cancellable,
                                          GAsyncReadyCallback   callback,
                                          gpointer              user_data);
      IdeSymbol *(*lookup_symbol_finish) (IdeSymbolResolver    *self,
                                          GAsyncResult         *result,
                                          GError              **error);
      void       (*get_symbols_async)    (IdeSymbolResolver    *self,
                                          IdeFile              *file,
                                          GCancellable         *cancellable,
                                          GAsyncReadyCallback   callback,
                                          gpointer              user_data);
      GPtrArray *(*get_symbols_finish)   (IdeSymbolResolver    *self,
                                          GAsyncResult         *result,
                                          GError              **error);
    };

### IdeSymbolResolver

    typedef struct _IdeSymbolResolver IdeSymbolResolver;