## IAnjutaSymbol IAnjutaSymbol — Source code symbol interface |

## Stability Level

Unstable, unless otherwise indicated

## Synopsis

    #include <libanjuta/interfaces/ianjuta-symbol.h>

    #define             IANJUTA_TYPE_SYMBOL_FIELD
    #define             IANJUTA_TYPE_SYMBOL_TYPE
    enum                IAnjutaSymbolField;
    enum                IAnjutaSymbolType;
    #define             IANJUTA_SYMBOL_ERROR
                        IAnjutaSymbol;
                        IAnjutaSymbolIface;
    GType               ianjuta_symbol_type_get_type        (void);
    GQuark              ianjuta_symbol_error_quark          (void);
    GType               ianjuta_symbol_get_type             (void);
    gchar               ianjuta_symbol_access               (IAnjutaSymbol *obj,
                                                             GError **err);
    const gchar*        ianjuta_symbol_args                 (IAnjutaSymbol *obj,
                                                             GError **err);
    const gchar*        ianjuta_symbol_file                 (IAnjutaSymbol *obj,
                                                             GError **err);
    GdkPixbuf*          ianjuta_symbol_icon                 (IAnjutaSymbol *obj,
                                                             GError **err);
    gchar               ianjuta_symbol_impl                 (IAnjutaSymbol *obj,
                                                             GError **err);
    const gchar*        ianjuta_symbol_inheritance          (IAnjutaSymbol *obj,
                                                             GError **err);
    gboolean            ianjuta_symbol_is_local             (IAnjutaSymbol *obj,
                                                             GError **err);
    gulong              ianjuta_symbol_line                 (IAnjutaSymbol *obj,
                                                             GError **err);
    const gchar*        ianjuta_symbol_name                 (IAnjutaSymbol *obj,
                                                             GError **err);
    guint               ianjuta_symbol_pointer_order        (IAnjutaSymbol *obj,
                                                             GError **err);
    const gchar*        ianjuta_symbol_scope                (IAnjutaSymbol *obj,
                                                             GError **err);
    IAnjutaSymbolType   ianjuta_symbol_type                 (IAnjutaSymbol *obj,
                                                             GError **err);
    const gchar*        ianjuta_symbol_var_type             (IAnjutaSymbol *obj,
                                                             GError **err);

## Object Hierarchy

      GInterface
       +----IAnjutaSymbol

## Prerequisites

IAnjutaSymbol requires GObject.

## Description

## Details

### IANJUTA_TYPE_SYMBOL_FIELD

    #define IANJUTA_TYPE_SYMBOL_FIELD (ianjuta_symbol_field_get_type())

### IANJUTA_TYPE_SYMBOL_TYPE

    #define IANJUTA_TYPE_SYMBOL_TYPE (ianjuta_symbol_type_get_type())

### enum IAnjutaSymbolField

    typedef enum {
    	IANJUTA_SYMBOL_FIELD_NONE = 0,
    	IANJUTA_SYMBOL_FIELD_NAME = 1,
    	IANJUTA_SYMBOL_FIELD_TYPE = 2,
    	IANJUTA_SYMBOL_FIELD_FILE = 4,
    	IANJUTA_SYMBOL_FIELD_LINE = 8,
    	IANJUTA_SYMBOL_FIELD_POSITION = 16,
    	IANJUTA_SYMBOL_FIELD_SCOPE = 32,
    	IANJUTA_SYMBOL_FIELD_INHERITANCE = 64,
    	IANJUTA_SYMBOL_FIELD_ARGUMENTS = 128,
    	IANJUTA_SYMBOL_FIELD_LOCAL = 256,
    	IANJUTA_SYMBOL_FIELD_TIME = 512,
    	IANJUTA_SYMBOL_FIELD_VARTYPE = 1024,
    	IANJUTA_SYMBOL_FIELD_ACCESS = 2048,
    	IANJUTA_SYMBOL_FIELD_IMPLEMENTATION = 4096,
    	IANJUTA_SYMBOL_FIELD_LANGUAGE = 8192,
    	IANJUTA_SYMBOL_FIELD_INACTIVE = 16384,
    	IANJUTA_SYMBOL_FIELD_POINTER = 32768,
    	IANJUTA_SYMBOL_FIELD_MAX = 65535
    } IAnjutaSymbolField;

### enum IAnjutaSymbolType

    typedef enum {
    	IANJUTA_SYMBOL_TYPE_UNDEF = 0,
    	IANJUTA_SYMBOL_TYPE_CLASS = 1,
    	IANJUTA_SYMBOL_TYPE_ENUM = 2,
    	IANJUTA_SYMBOL_TYPE_ENUMERATOR = 4,
    	IANJUTA_SYMBOL_TYPE_FIELD = 8,
    	IANJUTA_SYMBOL_TYPE_FUNCTION = 16,
    	IANJUTA_SYMBOL_TYPE_INTERFACE = 32,
    	IANJUTA_SYMBOL_TYPE_MEMBER = 64,
    	IANJUTA_SYMBOL_TYPE_METHOD = 128,
    	IANJUTA_SYMBOL_TYPE_NAMESPACE = 256,
    	IANJUTA_SYMBOL_TYPE_PACKAGE = 512,
    	IANJUTA_SYMBOL_TYPE_PROTOTYPE = 1024,
    	IANJUTA_SYMBOL_TYPE_STRUCT = 2048,
    	IANJUTA_SYMBOL_TYPE_TYPEDEF = 4096,
    	IANJUTA_SYMBOL_TYPE_UNION = 8192,
    	IANJUTA_SYMBOL_TYPE_VARIABLE = 16384,
    	IANJUTA_SYMBOL_TYPE_EXTERNVAR = 32768,
    	IANJUTA_SYMBOL_TYPE_MACRO = 65536,
    	IANJUTA_SYMBOL_TYPE_MACRO_WITH_ARG = 131072,
    	IANJUTA_SYMBOL_TYPE_FILE = 262144,
    	IANJUTA_SYMBOL_TYPE_OTHER = 524288,
    	IANJUTA_SYMBOL_TYPE_MAX = 1048575
    } IAnjutaSymbolType;

### IANJUTA_SYMBOL_ERROR

    #define IANJUTA_SYMBOL_ERROR ianjuta_symbol_error_quark()

### IAnjutaSymbol

    typedef struct _IAnjutaSymbol IAnjutaSymbol;

### IAnjutaSymbolIface

    typedef struct {
    	GTypeInterface g_iface;

    	gchar (*access) (IAnjutaSymbol *obj, GError **err);
    	const gchar * (*args) (IAnjutaSymbol *obj, GError **err);
    	const gchar * (*file) (IAnjutaSymbol *obj, GError **err);
    	GdkPixbuf * (*icon) (IAnjutaSymbol *obj, GError **err);
    	gchar (*impl) (IAnjutaSymbol *obj, GError **err);
    	const gchar * (*inheritance) (IAnjutaSymbol *obj, GError **err);
    	gboolean (*is_local) (IAnjutaSymbol *obj, GError **err);
    	gulong (*line) (IAnjutaSymbol *obj, GError **err);
    	const gchar * (*name) (IAnjutaSymbol *obj, GError **err);
    	guint (*pointer_order) (IAnjutaSymbol *obj, GError **err);
    	const gchar * (*scope) (IAnjutaSymbol *obj, GError **err);
    	IAnjutaSymbolType (*type) (IAnjutaSymbol *obj, GError **err);
    	const gchar * (*var_type) (IAnjutaSymbol *obj, GError **err);
    } IAnjutaSymbolIface;

### ianjuta_symbol_type_get_type ()

    GType               ianjuta_symbol_type_get_type        (void);

Returns : |

### ianjuta_symbol_error_quark ()

    GQuark              ianjuta_symbol_error_quark          (void);

Returns : |

### ianjuta_symbol_get_type ()

    GType               ianjuta_symbol_get_type             (void);

Returns : |

### ianjuta_symbol_access ()

    gchar               ianjuta_symbol_access               (IAnjutaSymbol *obj,
                                                             GError **err);

`obj` : |
`err` : |
Returns : |

### ianjuta_symbol_args ()

    const gchar*        ianjuta_symbol_args                 (IAnjutaSymbol *obj,
                                                             GError **err);

`obj` : |
`err` : |
Returns : |

### ianjuta_symbol_file ()

    const gchar*        ianjuta_symbol_file                 (IAnjutaSymbol *obj,
                                                             GError **err);

`obj` : |
`err` : |
Returns : |

### ianjuta_symbol_icon ()

    GdkPixbuf*          ianjuta_symbol_icon                 (IAnjutaSymbol *obj,
                                                             GError **err);

`obj` : |
`err` : |
Returns : |

### ianjuta_symbol_impl ()

    gchar               ianjuta_symbol_impl                 (IAnjutaSymbol *obj,
                                                             GError **err);

`obj` : |
`err` : |
Returns : |

### ianjuta_symbol_inheritance ()

    const gchar*        ianjuta_symbol_inheritance          (IAnjutaSymbol *obj,
                                                             GError **err);

`obj` : |
`err` : |
Returns : |

### ianjuta_symbol_is_local ()

    gboolean            ianjuta_symbol_is_local             (IAnjutaSymbol *obj,
                                                             GError **err);

`obj` : |
`err` : |
Returns : |

### ianjuta_symbol_line ()

    gulong              ianjuta_symbol_line                 (IAnjutaSymbol *obj,
                                                             GError **err);

`obj` : |
`err` : |
Returns : |

### ianjuta_symbol_name ()

    const gchar*        ianjuta_symbol_name                 (IAnjutaSymbol *obj,
                                                             GError **err);

`obj` : |
`err` : |
Returns : |

### ianjuta_symbol_pointer_order ()

    guint               ianjuta_symbol_pointer_order        (IAnjutaSymbol *obj,
                                                             GError **err);

`obj` : |
`err` : |
Returns : |

### ianjuta_symbol_scope ()

    const gchar*        ianjuta_symbol_scope                (IAnjutaSymbol *obj,
                                                             GError **err);

`obj` : |
`err` : |
Returns : |

### ianjuta_symbol_type ()

    IAnjutaSymbolType   ianjuta_symbol_type                 (IAnjutaSymbol *obj,
                                                             GError **err);

`obj` : |
`err` : |
Returns : |

### ianjuta_symbol_var_type ()

    const gchar*        ianjuta_symbol_var_type             (IAnjutaSymbol *obj,
                                                             GError **err);

`obj` : |
`err` : |
Returns : |

## See Also

IAnjutaSymbolManager