## cr-token

cr-token

## Synopsis

    struct              CRToken;
    void                cr_token_destroy                    (CRToken *a_this);
    CRToken *           cr_token_new                        (void);
    enum CRStatus       cr_token_set_angle                  (CRToken *a_this,
                                                             CRNum *a_num,
                                                             enum CRTokenExtraType a_et);
    enum CRStatus       cr_token_set_atkeyword              (CRToken *a_this,
                                                             CRString *a_atname);
    enum CRStatus       cr_token_set_bc                     (CRToken *a_this);
    enum CRStatus       cr_token_set_bo                     (CRToken *a_this);
    enum CRStatus       cr_token_set_cbc                    (CRToken *a_this);
    enum CRStatus       cr_token_set_cbo                    (CRToken *a_this);
    enum CRStatus       cr_token_set_cdc                    (CRToken *a_this);
    enum CRStatus       cr_token_set_cdo                    (CRToken *a_this);
    enum CRStatus       cr_token_set_charset_sym            (CRToken *a_this);
    enum CRStatus       cr_token_set_comment                (CRToken *a_this,
                                                             CRString *a_str);
    enum CRStatus       cr_token_set_dashmatch              (CRToken *a_this);
    enum CRStatus       cr_token_set_delim                  (CRToken *a_this,
                                                             guint32 a_char);
    enum CRStatus       cr_token_set_dimen                  (CRToken *a_this,
                                                             CRNum *a_num,
                                                             CRString *a_dim);
    enum CRStatus       cr_token_set_ems                    (CRToken *a_this,
                                                             CRNum *a_num);
    enum CRStatus       cr_token_set_exs                    (CRToken *a_this,
                                                             CRNum *a_num);
    enum CRStatus       cr_token_set_font_face_sym          (CRToken *a_this);
    enum CRStatus       cr_token_set_freq                   (CRToken *a_this,
                                                             CRNum *a_num,
                                                             enum CRTokenExtraType a_et);
    enum CRStatus       cr_token_set_function               (CRToken *a_this,
                                                             CRString *a_fun_name);
    enum CRStatus       cr_token_set_hash                   (CRToken *a_this,
                                                             CRString *a_hash);
    enum CRStatus       cr_token_set_ident                  (CRToken *a_this,
                                                             CRString *a_ident);
    enum CRStatus       cr_token_set_import_sym             (CRToken *a_this);
    enum CRStatus       cr_token_set_important_sym          (CRToken *a_this);
    enum CRStatus       cr_token_set_includes               (CRToken *a_this);
    enum CRStatus       cr_token_set_length                 (CRToken *a_this,
                                                             CRNum *a_num,
                                                             enum CRTokenExtraType a_et);
    enum CRStatus       cr_token_set_media_sym              (CRToken *a_this);
    enum CRStatus       cr_token_set_number                 (CRToken *a_this,
                                                             CRNum *a_num);
    enum CRStatus       cr_token_set_page_sym               (CRToken *a_this);
    enum CRStatus       cr_token_set_pc                     (CRToken *a_this);
    enum CRStatus       cr_token_set_percentage             (CRToken *a_this,
                                                             CRNum *a_num);
    enum CRStatus       cr_token_set_po                     (CRToken *a_this);
    enum CRStatus       cr_token_set_rgb                    (CRToken *a_this,
                                                             CRRgb *a_rgb);
    enum CRStatus       cr_token_set_s                      (CRToken *a_this);
    enum CRStatus       cr_token_set_semicolon              (CRToken *a_this);
    enum CRStatus       cr_token_set_string                 (CRToken *a_this,
                                                             CRString *a_str);
    enum CRStatus       cr_token_set_time                   (CRToken *a_this,
                                                             CRNum *a_num,
                                                             enum CRTokenExtraType a_et);
    enum CRStatus       cr_token_set_uri                    (CRToken *a_this,
                                                             CRString *a_uri);

## Description

## Details

### struct CRToken

    struct CRToken {
            enum CRTokenType type ;
            enum CRTokenExtraType extra_type ;
            CRInputPos pos ;

            union
            {
                    CRString *str ;
                    CRRgb *rgb ;
                    CRNum *num ;
                    guint32 unichar ;
            } u ;

            CRString * dimen ;
            CRParsingLocation location ;
    };

### cr_token_destroy ()

    void                cr_token_destroy                    (CRToken *a_this);

### cr_token_new ()

    CRToken *           cr_token_new                        (void);

### cr_token_set_angle ()

    enum CRStatus       cr_token_set_angle                  (CRToken *a_this,
                                                             CRNum *a_num,
                                                             enum CRTokenExtraType a_et);

### cr_token_set_atkeyword ()

    enum CRStatus       cr_token_set_atkeyword              (CRToken *a_this,
                                                             CRString *a_atname);

### cr_token_set_bc ()

    enum CRStatus       cr_token_set_bc                     (CRToken *a_this);

### cr_token_set_bo ()

    enum CRStatus       cr_token_set_bo                     (CRToken *a_this);

### cr_token_set_cbc ()

    enum CRStatus       cr_token_set_cbc                    (CRToken *a_this);

### cr_token_set_cbo ()

    enum CRStatus       cr_token_set_cbo                    (CRToken *a_this);

### cr_token_set_cdc ()

    enum CRStatus       cr_token_set_cdc                    (CRToken *a_this);

### cr_token_set_cdo ()

    enum CRStatus       cr_token_set_cdo                    (CRToken *a_this);

### cr_token_set_charset_sym ()

    enum CRStatus       cr_token_set_charset_sym            (CRToken *a_this);

### cr_token_set_comment ()

    enum CRStatus       cr_token_set_comment                (CRToken *a_this,
                                                             CRString *a_str);

### cr_token_set_dashmatch ()

    enum CRStatus       cr_token_set_dashmatch              (CRToken *a_this);

### cr_token_set_delim ()

    enum CRStatus       cr_token_set_delim                  (CRToken *a_this,
                                                             guint32 a_char);

### cr_token_set_dimen ()

    enum CRStatus       cr_token_set_dimen                  (CRToken *a_this,
                                                             CRNum *a_num,
                                                             CRString *a_dim);

### cr_token_set_ems ()

    enum CRStatus       cr_token_set_ems                    (CRToken *a_this,
                                                             CRNum *a_num);

### cr_token_set_exs ()

    enum CRStatus       cr_token_set_exs                    (CRToken *a_this,
                                                             CRNum *a_num);

### cr_token_set_font_face_sym ()

    enum CRStatus       cr_token_set_font_face_sym          (CRToken *a_this);

### cr_token_set_freq ()

    enum CRStatus       cr_token_set_freq                   (CRToken *a_this,
                                                             CRNum *a_num,
                                                             enum CRTokenExtraType a_et);

### cr_token_set_function ()

    enum CRStatus       cr_token_set_function               (CRToken *a_this,
                                                             CRString *a_fun_name);

### cr_token_set_hash ()

    enum CRStatus       cr_token_set_hash                   (CRToken *a_this,
                                                             CRString *a_hash);

### cr_token_set_ident ()

    enum CRStatus       cr_token_set_ident                  (CRToken *a_this,
                                                             CRString *a_ident);

### cr_token_set_import_sym ()

    enum CRStatus       cr_token_set_import_sym             (CRToken *a_this);

### cr_token_set_important_sym ()

    enum CRStatus       cr_token_set_important_sym          (CRToken *a_this);

### cr_token_set_includes ()

    enum CRStatus       cr_token_set_includes               (CRToken *a_this);

### cr_token_set_length ()

    enum CRStatus       cr_token_set_length                 (CRToken *a_this,
                                                             CRNum *a_num,
                                                             enum CRTokenExtraType a_et);

### cr_token_set_media_sym ()

    enum CRStatus       cr_token_set_media_sym              (CRToken *a_this);

### cr_token_set_number ()

    enum CRStatus       cr_token_set_number                 (CRToken *a_this,
                                                             CRNum *a_num);

### cr_token_set_page_sym ()

    enum CRStatus       cr_token_set_page_sym               (CRToken *a_this);

### cr_token_set_pc ()

    enum CRStatus       cr_token_set_pc                     (CRToken *a_this);

### cr_token_set_percentage ()

    enum CRStatus       cr_token_set_percentage             (CRToken *a_this,
                                                             CRNum *a_num);

### cr_token_set_po ()

    enum CRStatus       cr_token_set_po                     (CRToken *a_this);

### cr_token_set_rgb ()

    enum CRStatus       cr_token_set_rgb                    (CRToken *a_this,
                                                             CRRgb *a_rgb);

### cr_token_set_s ()

    enum CRStatus       cr_token_set_s                      (CRToken *a_this);

### cr_token_set_semicolon ()

    enum CRStatus       cr_token_set_semicolon              (CRToken *a_this);

### cr_token_set_string ()

    enum CRStatus       cr_token_set_string                 (CRToken *a_this,
                                                             CRString *a_str);

### cr_token_set_time ()

    enum CRStatus       cr_token_set_time                   (CRToken *a_this,
                                                             CRNum *a_num,
                                                             enum CRTokenExtraType a_et);

### cr_token_set_uri ()

    enum CRStatus       cr_token_set_uri                    (CRToken *a_this,
                                                             CRString *a_uri);