## cr-additional-sel

cr-additional-sel

## Functions

CRAdditionalSel * | cr_additional_sel_new ()
CRAdditionalSel * | cr_additional_sel_new_with_type ()
CRAdditionalSel * | cr_additional_sel_append ()
void | cr_additional_sel_set_class_name ()
void | cr_additional_sel_set_id_name ()
void | cr_additional_sel_set_pseudo ()
void | cr_additional_sel_set_attr_sel ()
CRAdditionalSel * | cr_additional_sel_prepend ()
guchar * | cr_additional_sel_to_string ()
guchar * | cr_additional_sel_one_to_string ()
void | cr_additional_sel_dump ()
void | cr_additional_sel_destroy ()

## Types and Values

struct | CRAdditionalSel

## Description

## Functions

### cr_additional_sel_new ()

    CRAdditionalSel *
    cr_additional_sel_new (void);

Default constructor of CRAdditionalSel. Returns the newly build instance of CRAdditionalSel.

### cr_additional_sel_new_with_type ()

    CRAdditionalSel *
    cr_additional_sel_new_with_type (enum AddSelectorType a_sel_type);

Constructor of CRAdditionalSel. Returns the newly built instance of CRAdditionalSel.

#### Parameters

a_sel_type | the type of the newly built instance of CRAdditionalSel. |

### cr_additional_sel_append ()

    CRAdditionalSel *
    cr_additional_sel_append (CRAdditionalSel *a_this,
                              CRAdditionalSel *a_sel);

Appends a new instance of CRAdditional to the current list of CRAdditional.

Returns the new list of CRAdditionalSel or NULL if an error arises.

#### Parameters

a_this | the "this pointer" of the current instance of CRAdditionalSel . |
a_sel | the new instance to CRAdditional to append. |

### cr_additional_sel_set_class_name ()

    void
    cr_additional_sel_set_class_name (CRAdditionalSel *a_this,
                                      CRString *a_class_name);

Sets a new class name to a CLASS additional selector.

#### Parameters

a_this | the "this pointer" of the current instance of CRAdditionalSel . |
a_class_name | the new class name to set. |

### cr_additional_sel_set_id_name ()

    void
    cr_additional_sel_set_id_name (CRAdditionalSel *a_this,
                                   CRString *a_id);

Sets a new id name to an ID additional selector.

#### Parameters

a_this | the "this pointer" of the current instance of CRAdditionalSel . |
a_id | the new id to set. |

### cr_additional_sel_set_pseudo ()

    void
    cr_additional_sel_set_pseudo (CRAdditionalSel *a_this,
                                  CRPseudo *a_pseudo);

Sets a new pseudo to a PSEUDO additional selector.

#### Parameters

a_this | the "this pointer" of the current instance of CRAdditionalSel . |
a_pseudo | the new pseudo to set. |

### cr_additional_sel_set_attr_sel ()

    void
    cr_additional_sel_set_attr_sel (CRAdditionalSel *a_this,
                                    CRAttrSel *a_sel);

Sets a new instance of CRAttrSel to a ATTRIBUTE additional selector.

#### Parameters

a_this | the "this pointer" of the current instance of CRAdditionalSel . |
a_sel | the new instance of CRAttrSel to set. |

### cr_additional_sel_prepend ()

    CRAdditionalSel *
    cr_additional_sel_prepend (CRAdditionalSel *a_this,
                               CRAdditionalSel *a_sel);

Preppends a new instance of CRAdditional to the current list of CRAdditional.

Returns the new list of CRAdditionalSel or NULL if an error arises.

#### Parameters

a_this | the "this pointer" of the current instance of CRAdditionalSel . |
a_sel | the new instance to CRAdditional to preappend. |

### cr_additional_sel_to_string ()

    guchar *
    cr_additional_sel_to_string (CRAdditionalSel const *a_this);

### cr_additional_sel_one_to_string ()

    guchar *
    cr_additional_sel_one_to_string (CRAdditionalSel const *a_this);

### cr_additional_sel_dump ()

    void
    cr_additional_sel_dump (CRAdditionalSel const *a_this,
                            FILE *a_fp);

Dumps the current instance of CRAdditionalSel to a file

#### Parameters

a_this | the "this pointer" of the current instance of CRAdditionalSel. |
a_fp | the destination file. |

### cr_additional_sel_destroy ()

    void
    cr_additional_sel_destroy (CRAdditionalSel *a_this);

Destroys an instance of CRAdditional.

#### Parameters

a_this | the "this pointer" of the current instance of CRAdditionalSel . |

## Types and Values

### struct CRAdditionalSel

    struct CRAdditionalSel {
            enum AddSelectorType type ;
            union CRAdditionalSelectorContent content ;

            CRAdditionalSel * next ;
            CRAdditionalSel * prev ;
            CRParsingLocation location ;
    };

CRAdditionalSel abstracts an additionnal selector. An additional selector is the selector part that comes after the combination of type selectors. It can be either "a class selector (the .class part), a pseudo class selector, an attribute selector or an id selector.