## cr-selector cr-selector |

## Functions

CRSelector * | cr_selector_new ()
CRSelector * | cr_selector_parse_from_buf ()
CRSelector * | cr_selector_append ()
CRSelector * | cr_selector_append_simple_sel ()
CRSelector * | cr_selector_prepend ()
guchar * | cr_selector_to_string ()
void | cr_selector_dump ()
void | cr_selector_ref ()
gboolean | cr_selector_unref ()
void | cr_selector_destroy ()

## Types and Values

struct | CRSelector

## Description

## Functions

### cr_selector_new ()

    CRSelector *
    cr_selector_new (CRSimpleSel *a_sel_expr);

`a_simple_sel` : the initial simple selector list of the current instance of CRSelector.

Creates a new instance of CRSelector.

Returns the newly built instance of CRSelector, or NULL in case of failure.

### cr_selector_parse_from_buf ()

    CRSelector *
    cr_selector_parse_from_buf (const guchar *a_char_buf,
                                enum CREncoding a_enc);

### cr_selector_append ()

    CRSelector *
    cr_selector_append (CRSelector *a_this,
                        CRSelector *a_new);

`a_this` : the current instance of CRSelector. `a_new` : the instance of CRSelector to be appended.

Appends a new instance of CRSelector to the current selector list.

Returns the new list.

### cr_selector_append_simple_sel ()

    CRSelector *
    cr_selector_append_simple_sel (CRSelector *a_this,
                                   CRSimpleSel *a_simple_sel);

`a_this` : the current instance of CRSelector. `a_simple_sel` : the simple selector to append.

append a simple selector to the current CRSelector list.

Returns the new list or NULL in case of failure.

### cr_selector_prepend ()

    CRSelector *
    cr_selector_prepend (CRSelector *a_this,
                         CRSelector *a_new);

`a_this` : the current instance of CRSelector list. `a_new` : the instance of CRSelector.

Prepends an element to the CRSelector list.

Returns the new list.

### cr_selector_to_string ()

    guchar *
    cr_selector_to_string (CRSelector const *a_this);

### cr_selector_dump ()

    void
    cr_selector_dump (CRSelector const *a_this,
                      FILE *a_fp);

`a_this` : the current instance of CRSelector. `a_fp` : the destination file.

Serializes the current instance of CRSelector to a file.

### cr_selector_ref ()

    void
    cr_selector_ref (CRSelector *a_this);

`a_this` : the current instance of CRSelector.

Increments the ref count of the current instance of CRSelector.

### cr_selector_unref ()

    gboolean
    cr_selector_unref (CRSelector *a_this);

`a_this` : the current instance of CRSelector.

Decrements the ref count of the current instance of CRSelector. If the ref count reaches zero, the current instance of CRSelector is destroyed.

Returns TRUE if this function destroyed the current instance of CRSelector, FALSE otherwise.

### cr_selector_destroy ()

    void
    cr_selector_destroy (CRSelector *a_this);

`a_this` : the current instance of CRSelector.

Destroys the selector list.

## Types and Values

### struct CRSelector

    struct CRSelector {
    	/**
    	 *A Selection expression.
    	 *It is a list of basic selectors.
    	 *Each basic selector can be either an element
    	 *selector, an id selector, a class selector, an
    	 *attribute selector, an universal selector etc ...
    	 */
    	CRSimpleSel *simple_sel ;

    	/**The next selector list element*/
    	CRSelector *next ;
    	CRSelector *prev ;
    	CRParsingLocation location ;
    	glong ref_count ;
    };