typedef enum { tok_eof = 0, tok_doctype = 256, tok_text, tok_wsp, tok_el_unknown, tok_el_a, tok_el_abbr, tok_el_acronym, tok_el_address, tok_el_applet, tok_el_area, tok_el_b, tok_el_base, tok_el_basefont, tok_el_bdo, tok_el_big, tok_el_blockquote, tok_el_body, tok_el_br, tok_el_button, tok_el_caption, tok_el_center, tok_el_cite, tok_el_code, tok_el_col, tok_el_colgroup, tok_el_dd, tok_el_del, tok_el_dfn, tok_el_dir, tok_el_div, tok_el_dl, tok_el_dt, tok_el_em, tok_el_fieldset, tok_el_font, tok_el_form, tok_el_frame, tok_el_frameset, tok_el_h1, tok_el_h2, tok_el_h3, tok_el_h4, tok_el_h5, tok_el_h6, tok_el_head, tok_el_hr, tok_el_html, tok_el_i, tok_el_iframe, tok_el_img, tok_el_input, tok_el_ins, tok_el_kbd, tok_el_label, tok_el_legend, tok_el_li, tok_el_link, tok_el_map, tok_el_menu, tok_el_meta, tok_el_noframes, tok_el_noscript, tok_el_object, tok_el_ol, tok_el_optgroup, tok_el_option, tok_el_p, tok_el_param, tok_el_pre, tok_el_q, tok_el_samp, tok_el_script, tok_el_select, tok_el_small, tok_el_span, tok_el_strike, tok_el_strong, tok_el_style, tok_el_sub, tok_el_sup, tok_el_table, tok_el_tbody, tok_el_td, tok_el_textarea, tok_el_tfoot, tok_el_th, tok_el_thead, tok_el_title, tok_el_tr, tok_el_tt, tok_el_u, tok_el_ul, tok_el_var, tok_at_unknown, tok_at_abbr, tok_at_accept, tok_at_accept_charset, tok_at_accesskey, tok_at_action, tok_at_align, tok_at_alink, tok_at_alt, tok_at_archive, tok_at_axis, tok_at_background, tok_at_bbr, tok_at_bgcolor, tok_at_border, tok_at_cellpadding, tok_at_cellspacing, tok_at_char, tok_at_charoff, tok_at_charset, tok_at_checked, tok_at_cite, tok_at_class, tok_at_classid, tok_at_clear, tok_at_code, tok_at_codebase, tok_at_codetype, tok_at_color, tok_at_cols, tok_at_colspan, tok_at_compact, tok_at_content, tok_at_coords, tok_at_data, tok_at_datetime, tok_at_declare, tok_at_defer, tok_at_dir, tok_at_disabled, tok_at_enctype, tok_at_face, tok_at_for, tok_at_frame, tok_at_frameborder, tok_at_headers, tok_at_height, tok_at_href, tok_at_hreflang, tok_at_hspace, tok_at_http_equiv, tok_at_id, tok_at_ismap, tok_at_label, tok_at_lang, tok_at_language, tok_at_link, tok_at_longdesc, tok_at_marginheight, tok_at_marginwidth, tok_at_maxlength, tok_at_media, tok_at_method, tok_at_multiple, tok_at_name, tok_at_nohref, tok_at_noresize, tok_at_noshade, tok_at_nowrap, tok_at_object, tok_at_onblur, tok_at_onchange, tok_at_onclick, tok_at_ondblclick, tok_at_onfocus, tok_at_onkeydown, tok_at_onkeypress, tok_at_onkeyup, tok_at_onload, tok_at_onmousedown, tok_at_onmousemove, tok_at_onmouseout, tok_at_onmouseover, tok_at_onmouseup, tok_at_onreset, tok_at_onselect, tok_at_onsubmit, tok_at_onunload, tok_at_profile, tok_at_prompt, tok_at_readonly, tok_at_rel, tok_at_rev, tok_at_rows, tok_at_rowspan, tok_at_rules, tok_at_scheme, tok_at_scope, tok_at_scrolling, tok_at_selected, tok_at_shape, tok_at_size, tok_at_span, tok_at_src, tok_at_standby, tok_at_start, tok_at_style, tok_at_summary, tok_at_tabindex, tok_at_target, tok_at_text, tok_at_title, tok_at_type, tok_at_usemap, tok_at_valign, tok_at_value, tok_at_valuetype, tok_at_version, tok_at_vlink, tok_at_vspace, tok_at_width, tok_max } toktype_t; typedef struct { int type; int is_el; int is_at; int is_close; char *lexeme; } token_t; typedef struct { int type; int *attr; } allowed_el_t; extern int yylex(void); extern char *yytext;