From accf126f7919e3ae1754af2a259d7e04d9330d5f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?M=C3=A1t=C3=A9=20Kocsis?= Date: Sun, 11 May 2025 23:26:14 +0200 Subject: [PATCH 1/3] Create separate lexbor extension In preparation of https://github.com/php/php-src/pull/14461 (https://wiki.php.net/rfc/url_parsing_api) --- .gitignore | 2 +- EXTENSIONS | 7 + ext/dom/config.m4 | 200 +--------------- ext/dom/config.w32 | 22 +- .../selectors-adapted/selectors.c | 6 +- .../selectors-adapted/selectors.h | 0 ext/dom/php_dom.c | 4 +- ext/{dom => }/lexbor/LICENSE | 0 ext/{dom => }/lexbor/NOTICE | 0 ext/lexbor/config.m4 | 217 ++++++++++++++++++ ext/lexbor/config.w32 | 30 +++ ext/{dom => }/lexbor/lexbor/core/array.c | 0 ext/{dom => }/lexbor/lexbor/core/array.h | 0 ext/{dom => }/lexbor/lexbor/core/array_obj.c | 0 ext/{dom => }/lexbor/lexbor/core/array_obj.h | 0 ext/{dom => }/lexbor/lexbor/core/avl.c | 0 ext/{dom => }/lexbor/lexbor/core/avl.h | 0 ext/{dom => }/lexbor/lexbor/core/base.h | 0 ext/{dom => }/lexbor/lexbor/core/bst.c | 0 ext/{dom => }/lexbor/lexbor/core/bst.h | 0 ext/{dom => }/lexbor/lexbor/core/bst_map.c | 0 ext/{dom => }/lexbor/lexbor/core/bst_map.h | 0 ext/{dom => }/lexbor/lexbor/core/conv.c | 0 ext/{dom => }/lexbor/lexbor/core/conv.h | 0 ext/{dom => }/lexbor/lexbor/core/core.h | 0 ext/{dom => }/lexbor/lexbor/core/def.h | 0 ext/{dom => }/lexbor/lexbor/core/diyfp.c | 0 ext/{dom => }/lexbor/lexbor/core/diyfp.h | 0 ext/{dom => }/lexbor/lexbor/core/dobject.c | 0 ext/{dom => }/lexbor/lexbor/core/dobject.h | 0 ext/{dom => }/lexbor/lexbor/core/dtoa.c | 0 ext/{dom => }/lexbor/lexbor/core/dtoa.h | 0 ext/{dom => }/lexbor/lexbor/core/fs.h | 0 ext/{dom => }/lexbor/lexbor/core/hash.c | 0 ext/{dom => }/lexbor/lexbor/core/hash.h | 0 ext/{dom => }/lexbor/lexbor/core/in.c | 0 ext/{dom => }/lexbor/lexbor/core/in.h | 0 ext/{dom => }/lexbor/lexbor/core/lexbor.h | 0 ext/{dom => }/lexbor/lexbor/core/mem.c | 0 ext/{dom => }/lexbor/lexbor/core/mem.h | 0 ext/{dom => }/lexbor/lexbor/core/mraw.c | 0 ext/{dom => }/lexbor/lexbor/core/mraw.h | 0 ext/{dom => }/lexbor/lexbor/core/perf.h | 0 ext/{dom => }/lexbor/lexbor/core/plog.c | 0 ext/{dom => }/lexbor/lexbor/core/plog.h | 0 ext/{dom => }/lexbor/lexbor/core/print.c | 0 ext/{dom => }/lexbor/lexbor/core/print.h | 0 ext/{dom => }/lexbor/lexbor/core/sbst.h | 0 ext/{dom => }/lexbor/lexbor/core/serialize.c | 0 ext/{dom => }/lexbor/lexbor/core/serialize.h | 0 ext/{dom => }/lexbor/lexbor/core/shs.c | 0 ext/{dom => }/lexbor/lexbor/core/shs.h | 0 ext/{dom => }/lexbor/lexbor/core/str.c | 0 ext/{dom => }/lexbor/lexbor/core/str.h | 0 ext/{dom => }/lexbor/lexbor/core/str_res.h | 0 ext/{dom => }/lexbor/lexbor/core/strtod.c | 0 ext/{dom => }/lexbor/lexbor/core/strtod.h | 0 ext/{dom => }/lexbor/lexbor/core/swar.h | 0 ext/{dom => }/lexbor/lexbor/core/types.h | 0 ext/{dom => }/lexbor/lexbor/core/utils.c | 0 ext/{dom => }/lexbor/lexbor/core/utils.h | 0 ext/{dom => }/lexbor/lexbor/css/at_rule.h | 0 .../lexbor/lexbor/css/at_rule/const.h | 0 ext/{dom => }/lexbor/lexbor/css/at_rule/res.h | 0 .../lexbor/lexbor/css/at_rule/state.h | 0 ext/{dom => }/lexbor/lexbor/css/base.h | 0 ext/{dom => }/lexbor/lexbor/css/css.c | 0 ext/{dom => }/lexbor/lexbor/css/css.h | 0 ext/{dom => }/lexbor/lexbor/css/declaration.h | 0 ext/{dom => }/lexbor/lexbor/css/log.c | 0 ext/{dom => }/lexbor/lexbor/css/log.h | 0 ext/{dom => }/lexbor/lexbor/css/parser.c | 0 ext/{dom => }/lexbor/lexbor/css/parser.h | 0 ext/{dom => }/lexbor/lexbor/css/property.h | 0 .../lexbor/lexbor/css/property/const.h | 0 .../lexbor/lexbor/css/property/res.h | 0 .../lexbor/lexbor/css/property/state.h | 0 ext/{dom => }/lexbor/lexbor/css/rule.h | 0 .../lexbor/lexbor/css/selectors/base.h | 0 .../lexbor/lexbor/css/selectors/pseudo.c | 0 .../lexbor/lexbor/css/selectors/pseudo.h | 0 .../lexbor/css/selectors/pseudo_const.h | 0 .../lexbor/lexbor/css/selectors/pseudo_res.h | 0 .../lexbor/css/selectors/pseudo_state.c | 0 .../lexbor/css/selectors/pseudo_state.h | 0 .../lexbor/lexbor/css/selectors/selector.c | 0 .../lexbor/lexbor/css/selectors/selector.h | 0 .../lexbor/lexbor/css/selectors/selectors.c | 0 .../lexbor/lexbor/css/selectors/selectors.h | 0 .../lexbor/lexbor/css/selectors/state.c | 0 .../lexbor/lexbor/css/selectors/state.h | 0 ext/{dom => }/lexbor/lexbor/css/state.c | 0 ext/{dom => }/lexbor/lexbor/css/state.h | 0 ext/{dom => }/lexbor/lexbor/css/stylesheet.h | 0 ext/{dom => }/lexbor/lexbor/css/syntax/anb.c | 0 ext/{dom => }/lexbor/lexbor/css/syntax/anb.h | 0 ext/{dom => }/lexbor/lexbor/css/syntax/base.h | 0 .../lexbor/lexbor/css/syntax/parser.c | 0 .../lexbor/lexbor/css/syntax/parser.h | 0 ext/{dom => }/lexbor/lexbor/css/syntax/res.h | 0 .../lexbor/lexbor/css/syntax/state.c | 0 .../lexbor/lexbor/css/syntax/state.h | 0 .../lexbor/lexbor/css/syntax/state_res.h | 0 .../lexbor/lexbor/css/syntax/syntax.c | 0 .../lexbor/lexbor/css/syntax/syntax.h | 0 .../lexbor/lexbor/css/syntax/token.c | 0 .../lexbor/lexbor/css/syntax/token.h | 0 .../lexbor/lexbor/css/syntax/token_res.h | 0 .../lexbor/lexbor/css/syntax/tokenizer.c | 0 .../lexbor/lexbor/css/syntax/tokenizer.h | 0 .../lexbor/css/syntax/tokenizer/error.c | 0 .../lexbor/css/syntax/tokenizer/error.h | 0 ext/{dom => }/lexbor/lexbor/css/unit.h | 0 ext/{dom => }/lexbor/lexbor/css/unit/const.h | 0 ext/{dom => }/lexbor/lexbor/css/unit/res.h | 0 ext/{dom => }/lexbor/lexbor/css/value.h | 0 ext/{dom => }/lexbor/lexbor/css/value/const.h | 0 ext/{dom => }/lexbor/lexbor/css/value/res.h | 0 ext/{dom => }/lexbor/lexbor/dom/base.h | 0 ext/{dom => }/lexbor/lexbor/dom/collection.c | 0 ext/{dom => }/lexbor/lexbor/dom/collection.h | 0 ext/{dom => }/lexbor/lexbor/dom/dom.h | 0 ext/{dom => }/lexbor/lexbor/dom/exception.c | 0 ext/{dom => }/lexbor/lexbor/dom/exception.h | 0 ext/{dom => }/lexbor/lexbor/dom/interface.c | 0 ext/{dom => }/lexbor/lexbor/dom/interface.h | 0 .../lexbor/lexbor/dom/interfaces/attr.c | 0 .../lexbor/lexbor/dom/interfaces/attr.h | 0 .../lexbor/lexbor/dom/interfaces/attr_const.h | 0 .../lexbor/lexbor/dom/interfaces/attr_res.h | 0 .../lexbor/dom/interfaces/cdata_section.c | 0 .../lexbor/dom/interfaces/cdata_section.h | 0 .../lexbor/dom/interfaces/character_data.c | 0 .../lexbor/dom/interfaces/character_data.h | 0 .../lexbor/lexbor/dom/interfaces/comment.c | 0 .../lexbor/lexbor/dom/interfaces/comment.h | 0 .../lexbor/lexbor/dom/interfaces/document.c | 0 .../lexbor/lexbor/dom/interfaces/document.h | 0 .../lexbor/dom/interfaces/document_fragment.c | 0 .../lexbor/dom/interfaces/document_fragment.h | 0 .../lexbor/dom/interfaces/document_type.c | 0 .../lexbor/dom/interfaces/document_type.h | 0 .../lexbor/lexbor/dom/interfaces/element.c | 0 .../lexbor/lexbor/dom/interfaces/element.h | 0 .../lexbor/dom/interfaces/event_target.c | 0 .../lexbor/dom/interfaces/event_target.h | 0 .../lexbor/lexbor/dom/interfaces/node.c | 0 .../lexbor/lexbor/dom/interfaces/node.h | 0 .../dom/interfaces/processing_instruction.c | 0 .../dom/interfaces/processing_instruction.h | 0 .../lexbor/dom/interfaces/shadow_root.c | 0 .../lexbor/dom/interfaces/shadow_root.h | 0 .../lexbor/lexbor/dom/interfaces/text.c | 0 .../lexbor/lexbor/dom/interfaces/text.h | 0 ext/{dom => }/lexbor/lexbor/encoding/base.h | 0 ext/{dom => }/lexbor/lexbor/encoding/big5.c | 0 ext/{dom => }/lexbor/lexbor/encoding/const.h | 0 ext/{dom => }/lexbor/lexbor/encoding/decode.c | 0 ext/{dom => }/lexbor/lexbor/encoding/decode.h | 0 ext/{dom => }/lexbor/lexbor/encoding/encode.c | 0 ext/{dom => }/lexbor/lexbor/encoding/encode.h | 0 .../lexbor/lexbor/encoding/encoding.c | 0 .../lexbor/lexbor/encoding/encoding.h | 0 ext/{dom => }/lexbor/lexbor/encoding/euc_kr.c | 0 .../lexbor/lexbor/encoding/gb18030.c | 0 .../lexbor/encoding/iso_2022_jp_katakana.c | 0 .../lexbor/lexbor/encoding/jis0208.c | 0 .../lexbor/lexbor/encoding/jis0212.c | 0 ext/{dom => }/lexbor/lexbor/encoding/multi.h | 0 ext/{dom => }/lexbor/lexbor/encoding/range.c | 0 ext/{dom => }/lexbor/lexbor/encoding/range.h | 0 ext/{dom => }/lexbor/lexbor/encoding/res.c | 0 ext/{dom => }/lexbor/lexbor/encoding/res.h | 0 ext/{dom => }/lexbor/lexbor/encoding/single.c | 0 ext/{dom => }/lexbor/lexbor/encoding/single.h | 0 ext/{dom => }/lexbor/lexbor/html/base.h | 0 ext/{dom => }/lexbor/lexbor/html/encoding.c | 0 ext/{dom => }/lexbor/lexbor/html/encoding.h | 0 ext/{dom => }/lexbor/lexbor/html/html.h | 0 ext/{dom => }/lexbor/lexbor/html/interface.c | 0 ext/{dom => }/lexbor/lexbor/html/interface.h | 0 .../lexbor/lexbor/html/interface_res.h | 0 .../lexbor/html/interfaces/anchor_element.c | 0 .../lexbor/html/interfaces/anchor_element.h | 0 .../lexbor/html/interfaces/area_element.c | 0 .../lexbor/html/interfaces/area_element.h | 0 .../lexbor/html/interfaces/audio_element.c | 0 .../lexbor/html/interfaces/audio_element.h | 0 .../lexbor/html/interfaces/base_element.c | 0 .../lexbor/html/interfaces/base_element.h | 0 .../lexbor/html/interfaces/body_element.c | 0 .../lexbor/html/interfaces/body_element.h | 0 .../lexbor/html/interfaces/br_element.c | 0 .../lexbor/html/interfaces/br_element.h | 0 .../lexbor/html/interfaces/button_element.c | 0 .../lexbor/html/interfaces/button_element.h | 0 .../lexbor/html/interfaces/canvas_element.c | 0 .../lexbor/html/interfaces/canvas_element.h | 0 .../lexbor/html/interfaces/d_list_element.c | 0 .../lexbor/html/interfaces/d_list_element.h | 0 .../lexbor/html/interfaces/data_element.c | 0 .../lexbor/html/interfaces/data_element.h | 0 .../html/interfaces/data_list_element.c | 0 .../html/interfaces/data_list_element.h | 0 .../lexbor/html/interfaces/details_element.c | 0 .../lexbor/html/interfaces/details_element.h | 0 .../lexbor/html/interfaces/dialog_element.c | 0 .../lexbor/html/interfaces/dialog_element.h | 0 .../html/interfaces/directory_element.c | 0 .../html/interfaces/directory_element.h | 0 .../lexbor/html/interfaces/div_element.c | 0 .../lexbor/html/interfaces/div_element.h | 0 .../lexbor/lexbor/html/interfaces/document.c | 0 .../lexbor/lexbor/html/interfaces/document.h | 0 .../lexbor/lexbor/html/interfaces/element.c | 0 .../lexbor/lexbor/html/interfaces/element.h | 0 .../lexbor/html/interfaces/embed_element.c | 0 .../lexbor/html/interfaces/embed_element.h | 0 .../html/interfaces/field_set_element.c | 0 .../html/interfaces/field_set_element.h | 0 .../lexbor/html/interfaces/font_element.c | 0 .../lexbor/html/interfaces/font_element.h | 0 .../lexbor/html/interfaces/form_element.c | 0 .../lexbor/html/interfaces/form_element.h | 0 .../lexbor/html/interfaces/frame_element.c | 0 .../lexbor/html/interfaces/frame_element.h | 0 .../html/interfaces/frame_set_element.c | 0 .../html/interfaces/frame_set_element.h | 0 .../lexbor/html/interfaces/head_element.c | 0 .../lexbor/html/interfaces/head_element.h | 0 .../lexbor/html/interfaces/heading_element.c | 0 .../lexbor/html/interfaces/heading_element.h | 0 .../lexbor/html/interfaces/hr_element.c | 0 .../lexbor/html/interfaces/hr_element.h | 0 .../lexbor/html/interfaces/html_element.c | 0 .../lexbor/html/interfaces/html_element.h | 0 .../lexbor/html/interfaces/iframe_element.c | 0 .../lexbor/html/interfaces/iframe_element.h | 0 .../lexbor/html/interfaces/image_element.c | 0 .../lexbor/html/interfaces/image_element.h | 0 .../lexbor/html/interfaces/input_element.c | 0 .../lexbor/html/interfaces/input_element.h | 0 .../lexbor/html/interfaces/label_element.c | 0 .../lexbor/html/interfaces/label_element.h | 0 .../lexbor/html/interfaces/legend_element.c | 0 .../lexbor/html/interfaces/legend_element.h | 0 .../lexbor/html/interfaces/li_element.c | 0 .../lexbor/html/interfaces/li_element.h | 0 .../lexbor/html/interfaces/link_element.c | 0 .../lexbor/html/interfaces/link_element.h | 0 .../lexbor/html/interfaces/map_element.c | 0 .../lexbor/html/interfaces/map_element.h | 0 .../lexbor/html/interfaces/marquee_element.c | 0 .../lexbor/html/interfaces/marquee_element.h | 0 .../lexbor/html/interfaces/media_element.c | 0 .../lexbor/html/interfaces/media_element.h | 0 .../lexbor/html/interfaces/menu_element.c | 0 .../lexbor/html/interfaces/menu_element.h | 0 .../lexbor/html/interfaces/meta_element.c | 0 .../lexbor/html/interfaces/meta_element.h | 0 .../lexbor/html/interfaces/meter_element.c | 0 .../lexbor/html/interfaces/meter_element.h | 0 .../lexbor/html/interfaces/mod_element.c | 0 .../lexbor/html/interfaces/mod_element.h | 0 .../lexbor/html/interfaces/o_list_element.c | 0 .../lexbor/html/interfaces/o_list_element.h | 0 .../lexbor/html/interfaces/object_element.c | 0 .../lexbor/html/interfaces/object_element.h | 0 .../html/interfaces/opt_group_element.c | 0 .../html/interfaces/opt_group_element.h | 0 .../lexbor/html/interfaces/option_element.c | 0 .../lexbor/html/interfaces/option_element.h | 0 .../lexbor/html/interfaces/output_element.c | 0 .../lexbor/html/interfaces/output_element.h | 0 .../html/interfaces/paragraph_element.c | 0 .../html/interfaces/paragraph_element.h | 0 .../lexbor/html/interfaces/param_element.c | 0 .../lexbor/html/interfaces/param_element.h | 0 .../lexbor/html/interfaces/picture_element.c | 0 .../lexbor/html/interfaces/picture_element.h | 0 .../lexbor/html/interfaces/pre_element.c | 0 .../lexbor/html/interfaces/pre_element.h | 0 .../lexbor/html/interfaces/progress_element.c | 0 .../lexbor/html/interfaces/progress_element.h | 0 .../lexbor/html/interfaces/quote_element.c | 0 .../lexbor/html/interfaces/quote_element.h | 0 .../lexbor/html/interfaces/script_element.c | 0 .../lexbor/html/interfaces/script_element.h | 0 .../lexbor/html/interfaces/select_element.c | 0 .../lexbor/html/interfaces/select_element.h | 0 .../lexbor/html/interfaces/slot_element.c | 0 .../lexbor/html/interfaces/slot_element.h | 0 .../lexbor/html/interfaces/source_element.c | 0 .../lexbor/html/interfaces/source_element.h | 0 .../lexbor/html/interfaces/span_element.c | 0 .../lexbor/html/interfaces/span_element.h | 0 .../lexbor/html/interfaces/style_element.c | 0 .../lexbor/html/interfaces/style_element.h | 0 .../html/interfaces/table_caption_element.c | 0 .../html/interfaces/table_caption_element.h | 0 .../html/interfaces/table_cell_element.c | 0 .../html/interfaces/table_cell_element.h | 0 .../html/interfaces/table_col_element.c | 0 .../html/interfaces/table_col_element.h | 0 .../lexbor/html/interfaces/table_element.c | 0 .../lexbor/html/interfaces/table_element.h | 0 .../html/interfaces/table_row_element.c | 0 .../html/interfaces/table_row_element.h | 0 .../html/interfaces/table_section_element.c | 0 .../html/interfaces/table_section_element.h | 0 .../lexbor/html/interfaces/template_element.c | 0 .../lexbor/html/interfaces/template_element.h | 0 .../html/interfaces/text_area_element.c | 0 .../html/interfaces/text_area_element.h | 0 .../lexbor/html/interfaces/time_element.c | 0 .../lexbor/html/interfaces/time_element.h | 0 .../lexbor/html/interfaces/title_element.c | 0 .../lexbor/html/interfaces/title_element.h | 0 .../lexbor/html/interfaces/track_element.c | 0 .../lexbor/html/interfaces/track_element.h | 0 .../lexbor/html/interfaces/u_list_element.c | 0 .../lexbor/html/interfaces/u_list_element.h | 0 .../lexbor/html/interfaces/unknown_element.c | 0 .../lexbor/html/interfaces/unknown_element.h | 0 .../lexbor/html/interfaces/video_element.c | 0 .../lexbor/html/interfaces/video_element.h | 0 .../lexbor/lexbor/html/interfaces/window.c | 0 .../lexbor/lexbor/html/interfaces/window.h | 0 ext/{dom => }/lexbor/lexbor/html/node.c | 0 ext/{dom => }/lexbor/lexbor/html/node.h | 0 ext/{dom => }/lexbor/lexbor/html/parser.c | 0 ext/{dom => }/lexbor/lexbor/html/parser.h | 0 ext/{dom => }/lexbor/lexbor/html/serialize.h | 0 ext/{dom => }/lexbor/lexbor/html/style.c | 0 ext/{dom => }/lexbor/lexbor/html/style.h | 0 ext/{dom => }/lexbor/lexbor/html/tag.h | 0 ext/{dom => }/lexbor/lexbor/html/tag_res.h | 0 ext/{dom => }/lexbor/lexbor/html/token.c | 0 ext/{dom => }/lexbor/lexbor/html/token.h | 0 ext/{dom => }/lexbor/lexbor/html/token_attr.c | 0 ext/{dom => }/lexbor/lexbor/html/token_attr.h | 0 ext/{dom => }/lexbor/lexbor/html/tokenizer.c | 0 ext/{dom => }/lexbor/lexbor/html/tokenizer.h | 0 .../lexbor/lexbor/html/tokenizer/error.c | 0 .../lexbor/lexbor/html/tokenizer/error.h | 0 .../lexbor/lexbor/html/tokenizer/res.h | 0 .../lexbor/lexbor/html/tokenizer/state.c | 0 .../lexbor/lexbor/html/tokenizer/state.h | 0 .../lexbor/html/tokenizer/state_comment.c | 0 .../lexbor/html/tokenizer/state_comment.h | 0 .../lexbor/html/tokenizer/state_doctype.c | 0 .../lexbor/html/tokenizer/state_doctype.h | 0 .../lexbor/html/tokenizer/state_rawtext.c | 0 .../lexbor/html/tokenizer/state_rawtext.h | 0 .../lexbor/html/tokenizer/state_rcdata.c | 0 .../lexbor/html/tokenizer/state_rcdata.h | 0 .../lexbor/html/tokenizer/state_script.c | 0 .../lexbor/html/tokenizer/state_script.h | 0 ext/{dom => }/lexbor/lexbor/html/tree.c | 0 ext/{dom => }/lexbor/lexbor/html/tree.h | 0 .../lexbor/html/tree/active_formatting.c | 0 .../lexbor/html/tree/active_formatting.h | 0 ext/{dom => }/lexbor/lexbor/html/tree/error.c | 0 ext/{dom => }/lexbor/lexbor/html/tree/error.h | 0 .../lexbor/lexbor/html/tree/insertion_mode.h | 0 .../tree/insertion_mode/after_after_body.c | 0 .../insertion_mode/after_after_frameset.c | 0 .../html/tree/insertion_mode/after_body.c | 0 .../html/tree/insertion_mode/after_frameset.c | 0 .../html/tree/insertion_mode/after_head.c | 0 .../html/tree/insertion_mode/before_head.c | 0 .../html/tree/insertion_mode/before_html.c | 0 .../tree/insertion_mode/foreign_content.c | 0 .../lexbor/html/tree/insertion_mode/in_body.c | 0 .../html/tree/insertion_mode/in_caption.c | 0 .../lexbor/html/tree/insertion_mode/in_cell.c | 0 .../tree/insertion_mode/in_column_group.c | 0 .../html/tree/insertion_mode/in_frameset.c | 0 .../lexbor/html/tree/insertion_mode/in_head.c | 0 .../tree/insertion_mode/in_head_noscript.c | 0 .../lexbor/html/tree/insertion_mode/in_row.c | 0 .../html/tree/insertion_mode/in_select.c | 0 .../tree/insertion_mode/in_select_in_table.c | 0 .../html/tree/insertion_mode/in_table.c | 0 .../html/tree/insertion_mode/in_table_body.c | 0 .../html/tree/insertion_mode/in_table_text.c | 0 .../html/tree/insertion_mode/in_template.c | 0 .../lexbor/html/tree/insertion_mode/initial.c | 0 .../lexbor/html/tree/insertion_mode/text.c | 0 .../lexbor/lexbor/html/tree/open_elements.c | 0 .../lexbor/lexbor/html/tree/open_elements.h | 0 .../lexbor/html/tree/template_insertion.c | 0 .../lexbor/html/tree/template_insertion.h | 0 ext/{dom => }/lexbor/lexbor/html/tree_res.h | 0 ext/{dom => }/lexbor/lexbor/ns/base.h | 0 ext/{dom => }/lexbor/lexbor/ns/const.h | 0 ext/{dom => }/lexbor/lexbor/ns/ns.c | 0 ext/{dom => }/lexbor/lexbor/ns/ns.h | 0 ext/{dom => }/lexbor/lexbor/ns/res.h | 0 .../lexbor/ports/posix/lexbor/core/memory.c | 0 .../ports/windows_nt/lexbor/core/memory.c | 0 ext/{dom => }/lexbor/lexbor/selectors/base.h | 0 .../lexbor/lexbor/selectors/selectors.c | 0 .../lexbor/lexbor/selectors/selectors.h | 0 ext/{dom => }/lexbor/lexbor/tag/base.h | 0 ext/{dom => }/lexbor/lexbor/tag/const.h | 0 ext/{dom => }/lexbor/lexbor/tag/res.h | 0 ext/{dom => }/lexbor/lexbor/tag/tag.c | 0 ext/{dom => }/lexbor/lexbor/tag/tag.h | 0 ...nd-column-information-for-use-in-PHP.patch | 0 ...d-added-nodes-for-options-use-in-PHP.patch | 0 ...and-data-structure-to-be-able-to-gen.patch | 0 ...ve-unused-upper-case-tag-static-data.patch | 0 ...nk-size-of-static-binary-search-tree.patch | 0 ...0006-Patch-out-unused-CSS-style-code.patch | 0 ext/{dom => }/lexbor/patches/README.md | 0 ext/lexbor/php_lexbor.c | 58 +++++ ext/lexbor/php_lexbor.h | 30 +++ 418 files changed, 357 insertions(+), 219 deletions(-) rename ext/dom/lexbor/{lexbor => }/selectors-adapted/selectors.c (99%) rename ext/dom/lexbor/{lexbor => }/selectors-adapted/selectors.h (100%) rename ext/{dom => }/lexbor/LICENSE (100%) rename ext/{dom => }/lexbor/NOTICE (100%) create mode 100644 ext/lexbor/config.m4 create mode 100644 ext/lexbor/config.w32 rename ext/{dom => }/lexbor/lexbor/core/array.c (100%) rename ext/{dom => }/lexbor/lexbor/core/array.h (100%) rename ext/{dom => }/lexbor/lexbor/core/array_obj.c (100%) rename ext/{dom => }/lexbor/lexbor/core/array_obj.h (100%) rename ext/{dom => }/lexbor/lexbor/core/avl.c (100%) rename ext/{dom => }/lexbor/lexbor/core/avl.h (100%) rename ext/{dom => }/lexbor/lexbor/core/base.h (100%) rename ext/{dom => }/lexbor/lexbor/core/bst.c (100%) rename ext/{dom => }/lexbor/lexbor/core/bst.h (100%) rename ext/{dom => }/lexbor/lexbor/core/bst_map.c (100%) rename ext/{dom => }/lexbor/lexbor/core/bst_map.h (100%) rename ext/{dom => }/lexbor/lexbor/core/conv.c (100%) rename ext/{dom => }/lexbor/lexbor/core/conv.h (100%) rename ext/{dom => }/lexbor/lexbor/core/core.h (100%) rename ext/{dom => }/lexbor/lexbor/core/def.h (100%) rename ext/{dom => }/lexbor/lexbor/core/diyfp.c (100%) rename ext/{dom => }/lexbor/lexbor/core/diyfp.h (100%) rename ext/{dom => }/lexbor/lexbor/core/dobject.c (100%) rename ext/{dom => }/lexbor/lexbor/core/dobject.h (100%) rename ext/{dom => }/lexbor/lexbor/core/dtoa.c (100%) rename ext/{dom => }/lexbor/lexbor/core/dtoa.h (100%) rename ext/{dom => }/lexbor/lexbor/core/fs.h (100%) rename ext/{dom => }/lexbor/lexbor/core/hash.c (100%) rename ext/{dom => }/lexbor/lexbor/core/hash.h (100%) rename ext/{dom => }/lexbor/lexbor/core/in.c (100%) rename ext/{dom => }/lexbor/lexbor/core/in.h (100%) rename ext/{dom => }/lexbor/lexbor/core/lexbor.h (100%) rename ext/{dom => }/lexbor/lexbor/core/mem.c (100%) rename ext/{dom => }/lexbor/lexbor/core/mem.h (100%) rename ext/{dom => }/lexbor/lexbor/core/mraw.c (100%) rename ext/{dom => }/lexbor/lexbor/core/mraw.h (100%) rename ext/{dom => }/lexbor/lexbor/core/perf.h (100%) rename ext/{dom => }/lexbor/lexbor/core/plog.c (100%) rename ext/{dom => }/lexbor/lexbor/core/plog.h (100%) rename ext/{dom => }/lexbor/lexbor/core/print.c (100%) rename ext/{dom => }/lexbor/lexbor/core/print.h (100%) rename ext/{dom => }/lexbor/lexbor/core/sbst.h (100%) rename ext/{dom => }/lexbor/lexbor/core/serialize.c (100%) rename ext/{dom => }/lexbor/lexbor/core/serialize.h (100%) rename ext/{dom => }/lexbor/lexbor/core/shs.c (100%) rename ext/{dom => }/lexbor/lexbor/core/shs.h (100%) rename ext/{dom => }/lexbor/lexbor/core/str.c (100%) rename ext/{dom => }/lexbor/lexbor/core/str.h (100%) rename ext/{dom => }/lexbor/lexbor/core/str_res.h (100%) rename ext/{dom => }/lexbor/lexbor/core/strtod.c (100%) rename ext/{dom => }/lexbor/lexbor/core/strtod.h (100%) rename ext/{dom => }/lexbor/lexbor/core/swar.h (100%) rename ext/{dom => }/lexbor/lexbor/core/types.h (100%) rename ext/{dom => }/lexbor/lexbor/core/utils.c (100%) rename ext/{dom => }/lexbor/lexbor/core/utils.h (100%) rename ext/{dom => }/lexbor/lexbor/css/at_rule.h (100%) rename ext/{dom => }/lexbor/lexbor/css/at_rule/const.h (100%) rename ext/{dom => }/lexbor/lexbor/css/at_rule/res.h (100%) rename ext/{dom => }/lexbor/lexbor/css/at_rule/state.h (100%) rename ext/{dom => }/lexbor/lexbor/css/base.h (100%) rename ext/{dom => }/lexbor/lexbor/css/css.c (100%) rename ext/{dom => }/lexbor/lexbor/css/css.h (100%) rename ext/{dom => }/lexbor/lexbor/css/declaration.h (100%) rename ext/{dom => }/lexbor/lexbor/css/log.c (100%) rename ext/{dom => }/lexbor/lexbor/css/log.h (100%) rename ext/{dom => }/lexbor/lexbor/css/parser.c (100%) rename ext/{dom => }/lexbor/lexbor/css/parser.h (100%) rename ext/{dom => }/lexbor/lexbor/css/property.h (100%) rename ext/{dom => }/lexbor/lexbor/css/property/const.h (100%) rename ext/{dom => }/lexbor/lexbor/css/property/res.h (100%) rename ext/{dom => }/lexbor/lexbor/css/property/state.h (100%) rename ext/{dom => }/lexbor/lexbor/css/rule.h (100%) rename ext/{dom => }/lexbor/lexbor/css/selectors/base.h (100%) rename ext/{dom => }/lexbor/lexbor/css/selectors/pseudo.c (100%) rename ext/{dom => }/lexbor/lexbor/css/selectors/pseudo.h (100%) rename ext/{dom => }/lexbor/lexbor/css/selectors/pseudo_const.h (100%) rename ext/{dom => }/lexbor/lexbor/css/selectors/pseudo_res.h (100%) rename ext/{dom => }/lexbor/lexbor/css/selectors/pseudo_state.c (100%) rename ext/{dom => }/lexbor/lexbor/css/selectors/pseudo_state.h (100%) rename ext/{dom => }/lexbor/lexbor/css/selectors/selector.c (100%) rename ext/{dom => }/lexbor/lexbor/css/selectors/selector.h (100%) rename ext/{dom => }/lexbor/lexbor/css/selectors/selectors.c (100%) rename ext/{dom => }/lexbor/lexbor/css/selectors/selectors.h (100%) rename ext/{dom => }/lexbor/lexbor/css/selectors/state.c (100%) rename ext/{dom => }/lexbor/lexbor/css/selectors/state.h (100%) rename ext/{dom => }/lexbor/lexbor/css/state.c (100%) rename ext/{dom => }/lexbor/lexbor/css/state.h (100%) rename ext/{dom => }/lexbor/lexbor/css/stylesheet.h (100%) rename ext/{dom => }/lexbor/lexbor/css/syntax/anb.c (100%) rename ext/{dom => }/lexbor/lexbor/css/syntax/anb.h (100%) rename ext/{dom => }/lexbor/lexbor/css/syntax/base.h (100%) rename ext/{dom => }/lexbor/lexbor/css/syntax/parser.c (100%) rename ext/{dom => }/lexbor/lexbor/css/syntax/parser.h (100%) rename ext/{dom => }/lexbor/lexbor/css/syntax/res.h (100%) rename ext/{dom => }/lexbor/lexbor/css/syntax/state.c (100%) rename ext/{dom => }/lexbor/lexbor/css/syntax/state.h (100%) rename ext/{dom => }/lexbor/lexbor/css/syntax/state_res.h (100%) rename ext/{dom => }/lexbor/lexbor/css/syntax/syntax.c (100%) rename ext/{dom => }/lexbor/lexbor/css/syntax/syntax.h (100%) rename ext/{dom => }/lexbor/lexbor/css/syntax/token.c (100%) rename ext/{dom => }/lexbor/lexbor/css/syntax/token.h (100%) rename ext/{dom => }/lexbor/lexbor/css/syntax/token_res.h (100%) rename ext/{dom => }/lexbor/lexbor/css/syntax/tokenizer.c (100%) rename ext/{dom => }/lexbor/lexbor/css/syntax/tokenizer.h (100%) rename ext/{dom => }/lexbor/lexbor/css/syntax/tokenizer/error.c (100%) rename ext/{dom => }/lexbor/lexbor/css/syntax/tokenizer/error.h (100%) rename ext/{dom => }/lexbor/lexbor/css/unit.h (100%) rename ext/{dom => }/lexbor/lexbor/css/unit/const.h (100%) rename ext/{dom => }/lexbor/lexbor/css/unit/res.h (100%) rename ext/{dom => }/lexbor/lexbor/css/value.h (100%) rename ext/{dom => }/lexbor/lexbor/css/value/const.h (100%) rename ext/{dom => }/lexbor/lexbor/css/value/res.h (100%) rename ext/{dom => }/lexbor/lexbor/dom/base.h (100%) rename ext/{dom => }/lexbor/lexbor/dom/collection.c (100%) rename ext/{dom => }/lexbor/lexbor/dom/collection.h (100%) rename ext/{dom => }/lexbor/lexbor/dom/dom.h (100%) rename ext/{dom => }/lexbor/lexbor/dom/exception.c (100%) rename ext/{dom => }/lexbor/lexbor/dom/exception.h (100%) rename ext/{dom => }/lexbor/lexbor/dom/interface.c (100%) rename ext/{dom => }/lexbor/lexbor/dom/interface.h (100%) rename ext/{dom => }/lexbor/lexbor/dom/interfaces/attr.c (100%) rename ext/{dom => }/lexbor/lexbor/dom/interfaces/attr.h (100%) rename ext/{dom => }/lexbor/lexbor/dom/interfaces/attr_const.h (100%) rename ext/{dom => }/lexbor/lexbor/dom/interfaces/attr_res.h (100%) rename ext/{dom => }/lexbor/lexbor/dom/interfaces/cdata_section.c (100%) rename ext/{dom => }/lexbor/lexbor/dom/interfaces/cdata_section.h (100%) rename ext/{dom => }/lexbor/lexbor/dom/interfaces/character_data.c (100%) rename ext/{dom => }/lexbor/lexbor/dom/interfaces/character_data.h (100%) rename ext/{dom => }/lexbor/lexbor/dom/interfaces/comment.c (100%) rename ext/{dom => }/lexbor/lexbor/dom/interfaces/comment.h (100%) rename ext/{dom => }/lexbor/lexbor/dom/interfaces/document.c (100%) rename ext/{dom => }/lexbor/lexbor/dom/interfaces/document.h (100%) rename ext/{dom => }/lexbor/lexbor/dom/interfaces/document_fragment.c (100%) rename ext/{dom => }/lexbor/lexbor/dom/interfaces/document_fragment.h (100%) rename ext/{dom => }/lexbor/lexbor/dom/interfaces/document_type.c (100%) rename ext/{dom => }/lexbor/lexbor/dom/interfaces/document_type.h (100%) rename ext/{dom => }/lexbor/lexbor/dom/interfaces/element.c (100%) rename ext/{dom => }/lexbor/lexbor/dom/interfaces/element.h (100%) rename ext/{dom => }/lexbor/lexbor/dom/interfaces/event_target.c (100%) rename ext/{dom => }/lexbor/lexbor/dom/interfaces/event_target.h (100%) rename ext/{dom => }/lexbor/lexbor/dom/interfaces/node.c (100%) rename ext/{dom => }/lexbor/lexbor/dom/interfaces/node.h (100%) rename ext/{dom => }/lexbor/lexbor/dom/interfaces/processing_instruction.c (100%) rename ext/{dom => }/lexbor/lexbor/dom/interfaces/processing_instruction.h (100%) rename ext/{dom => }/lexbor/lexbor/dom/interfaces/shadow_root.c (100%) rename ext/{dom => }/lexbor/lexbor/dom/interfaces/shadow_root.h (100%) rename ext/{dom => }/lexbor/lexbor/dom/interfaces/text.c (100%) rename ext/{dom => }/lexbor/lexbor/dom/interfaces/text.h (100%) rename ext/{dom => }/lexbor/lexbor/encoding/base.h (100%) rename ext/{dom => }/lexbor/lexbor/encoding/big5.c (100%) rename ext/{dom => }/lexbor/lexbor/encoding/const.h (100%) rename ext/{dom => }/lexbor/lexbor/encoding/decode.c (100%) rename ext/{dom => }/lexbor/lexbor/encoding/decode.h (100%) rename ext/{dom => }/lexbor/lexbor/encoding/encode.c (100%) rename ext/{dom => }/lexbor/lexbor/encoding/encode.h (100%) rename ext/{dom => }/lexbor/lexbor/encoding/encoding.c (100%) rename ext/{dom => }/lexbor/lexbor/encoding/encoding.h (100%) rename ext/{dom => }/lexbor/lexbor/encoding/euc_kr.c (100%) rename ext/{dom => }/lexbor/lexbor/encoding/gb18030.c (100%) rename ext/{dom => }/lexbor/lexbor/encoding/iso_2022_jp_katakana.c (100%) rename ext/{dom => }/lexbor/lexbor/encoding/jis0208.c (100%) rename ext/{dom => }/lexbor/lexbor/encoding/jis0212.c (100%) rename ext/{dom => }/lexbor/lexbor/encoding/multi.h (100%) rename ext/{dom => }/lexbor/lexbor/encoding/range.c (100%) rename ext/{dom => }/lexbor/lexbor/encoding/range.h (100%) rename ext/{dom => }/lexbor/lexbor/encoding/res.c (100%) rename ext/{dom => }/lexbor/lexbor/encoding/res.h (100%) rename ext/{dom => }/lexbor/lexbor/encoding/single.c (100%) rename ext/{dom => }/lexbor/lexbor/encoding/single.h (100%) rename ext/{dom => }/lexbor/lexbor/html/base.h (100%) rename ext/{dom => }/lexbor/lexbor/html/encoding.c (100%) rename ext/{dom => }/lexbor/lexbor/html/encoding.h (100%) rename ext/{dom => }/lexbor/lexbor/html/html.h (100%) rename ext/{dom => }/lexbor/lexbor/html/interface.c (100%) rename ext/{dom => }/lexbor/lexbor/html/interface.h (100%) rename ext/{dom => }/lexbor/lexbor/html/interface_res.h (100%) rename ext/{dom => }/lexbor/lexbor/html/interfaces/anchor_element.c (100%) rename ext/{dom => }/lexbor/lexbor/html/interfaces/anchor_element.h (100%) rename ext/{dom => }/lexbor/lexbor/html/interfaces/area_element.c (100%) rename ext/{dom => }/lexbor/lexbor/html/interfaces/area_element.h (100%) rename ext/{dom => }/lexbor/lexbor/html/interfaces/audio_element.c (100%) rename ext/{dom => }/lexbor/lexbor/html/interfaces/audio_element.h (100%) rename ext/{dom => }/lexbor/lexbor/html/interfaces/base_element.c (100%) rename ext/{dom => }/lexbor/lexbor/html/interfaces/base_element.h (100%) rename ext/{dom => }/lexbor/lexbor/html/interfaces/body_element.c (100%) rename ext/{dom => }/lexbor/lexbor/html/interfaces/body_element.h (100%) rename ext/{dom => }/lexbor/lexbor/html/interfaces/br_element.c (100%) rename ext/{dom => }/lexbor/lexbor/html/interfaces/br_element.h (100%) rename ext/{dom => }/lexbor/lexbor/html/interfaces/button_element.c (100%) rename ext/{dom => }/lexbor/lexbor/html/interfaces/button_element.h (100%) rename ext/{dom => }/lexbor/lexbor/html/interfaces/canvas_element.c (100%) rename ext/{dom => }/lexbor/lexbor/html/interfaces/canvas_element.h (100%) rename ext/{dom => }/lexbor/lexbor/html/interfaces/d_list_element.c (100%) rename ext/{dom => }/lexbor/lexbor/html/interfaces/d_list_element.h (100%) rename ext/{dom => }/lexbor/lexbor/html/interfaces/data_element.c (100%) rename ext/{dom => }/lexbor/lexbor/html/interfaces/data_element.h (100%) rename ext/{dom => }/lexbor/lexbor/html/interfaces/data_list_element.c (100%) rename ext/{dom => }/lexbor/lexbor/html/interfaces/data_list_element.h (100%) rename ext/{dom => }/lexbor/lexbor/html/interfaces/details_element.c (100%) rename ext/{dom => }/lexbor/lexbor/html/interfaces/details_element.h (100%) rename ext/{dom => }/lexbor/lexbor/html/interfaces/dialog_element.c (100%) rename ext/{dom => }/lexbor/lexbor/html/interfaces/dialog_element.h (100%) rename ext/{dom => }/lexbor/lexbor/html/interfaces/directory_element.c (100%) rename ext/{dom => }/lexbor/lexbor/html/interfaces/directory_element.h (100%) rename ext/{dom => }/lexbor/lexbor/html/interfaces/div_element.c (100%) rename ext/{dom => }/lexbor/lexbor/html/interfaces/div_element.h (100%) rename ext/{dom => }/lexbor/lexbor/html/interfaces/document.c (100%) rename ext/{dom => }/lexbor/lexbor/html/interfaces/document.h (100%) rename ext/{dom => }/lexbor/lexbor/html/interfaces/element.c (100%) rename ext/{dom => }/lexbor/lexbor/html/interfaces/element.h (100%) rename ext/{dom => }/lexbor/lexbor/html/interfaces/embed_element.c (100%) rename ext/{dom => }/lexbor/lexbor/html/interfaces/embed_element.h (100%) rename ext/{dom => }/lexbor/lexbor/html/interfaces/field_set_element.c (100%) rename ext/{dom => }/lexbor/lexbor/html/interfaces/field_set_element.h (100%) rename ext/{dom => }/lexbor/lexbor/html/interfaces/font_element.c (100%) rename ext/{dom => }/lexbor/lexbor/html/interfaces/font_element.h (100%) rename ext/{dom => }/lexbor/lexbor/html/interfaces/form_element.c (100%) rename ext/{dom => }/lexbor/lexbor/html/interfaces/form_element.h (100%) rename ext/{dom => }/lexbor/lexbor/html/interfaces/frame_element.c (100%) rename ext/{dom => }/lexbor/lexbor/html/interfaces/frame_element.h (100%) rename ext/{dom => }/lexbor/lexbor/html/interfaces/frame_set_element.c (100%) rename ext/{dom => }/lexbor/lexbor/html/interfaces/frame_set_element.h (100%) rename ext/{dom => }/lexbor/lexbor/html/interfaces/head_element.c (100%) rename ext/{dom => }/lexbor/lexbor/html/interfaces/head_element.h (100%) rename ext/{dom => }/lexbor/lexbor/html/interfaces/heading_element.c (100%) rename ext/{dom => }/lexbor/lexbor/html/interfaces/heading_element.h (100%) rename ext/{dom => }/lexbor/lexbor/html/interfaces/hr_element.c (100%) rename ext/{dom => }/lexbor/lexbor/html/interfaces/hr_element.h (100%) rename ext/{dom => }/lexbor/lexbor/html/interfaces/html_element.c (100%) rename ext/{dom => }/lexbor/lexbor/html/interfaces/html_element.h (100%) rename ext/{dom => }/lexbor/lexbor/html/interfaces/iframe_element.c (100%) rename ext/{dom => }/lexbor/lexbor/html/interfaces/iframe_element.h (100%) rename ext/{dom => }/lexbor/lexbor/html/interfaces/image_element.c (100%) rename ext/{dom => }/lexbor/lexbor/html/interfaces/image_element.h (100%) rename ext/{dom => }/lexbor/lexbor/html/interfaces/input_element.c (100%) rename ext/{dom => }/lexbor/lexbor/html/interfaces/input_element.h (100%) rename ext/{dom => }/lexbor/lexbor/html/interfaces/label_element.c (100%) rename ext/{dom => }/lexbor/lexbor/html/interfaces/label_element.h (100%) rename ext/{dom => }/lexbor/lexbor/html/interfaces/legend_element.c (100%) rename ext/{dom => }/lexbor/lexbor/html/interfaces/legend_element.h (100%) rename ext/{dom => }/lexbor/lexbor/html/interfaces/li_element.c (100%) rename ext/{dom => }/lexbor/lexbor/html/interfaces/li_element.h (100%) rename ext/{dom => }/lexbor/lexbor/html/interfaces/link_element.c (100%) rename ext/{dom => }/lexbor/lexbor/html/interfaces/link_element.h (100%) rename ext/{dom => }/lexbor/lexbor/html/interfaces/map_element.c (100%) rename ext/{dom => }/lexbor/lexbor/html/interfaces/map_element.h (100%) rename ext/{dom => }/lexbor/lexbor/html/interfaces/marquee_element.c (100%) rename ext/{dom => }/lexbor/lexbor/html/interfaces/marquee_element.h (100%) rename ext/{dom => }/lexbor/lexbor/html/interfaces/media_element.c (100%) rename ext/{dom => }/lexbor/lexbor/html/interfaces/media_element.h (100%) rename ext/{dom => }/lexbor/lexbor/html/interfaces/menu_element.c (100%) rename ext/{dom => }/lexbor/lexbor/html/interfaces/menu_element.h (100%) rename ext/{dom => }/lexbor/lexbor/html/interfaces/meta_element.c (100%) rename ext/{dom => }/lexbor/lexbor/html/interfaces/meta_element.h (100%) rename ext/{dom => }/lexbor/lexbor/html/interfaces/meter_element.c (100%) rename ext/{dom => }/lexbor/lexbor/html/interfaces/meter_element.h (100%) rename ext/{dom => }/lexbor/lexbor/html/interfaces/mod_element.c (100%) rename ext/{dom => }/lexbor/lexbor/html/interfaces/mod_element.h (100%) rename ext/{dom => }/lexbor/lexbor/html/interfaces/o_list_element.c (100%) rename ext/{dom => }/lexbor/lexbor/html/interfaces/o_list_element.h (100%) rename ext/{dom => }/lexbor/lexbor/html/interfaces/object_element.c (100%) rename ext/{dom => }/lexbor/lexbor/html/interfaces/object_element.h (100%) rename ext/{dom => }/lexbor/lexbor/html/interfaces/opt_group_element.c (100%) rename ext/{dom => }/lexbor/lexbor/html/interfaces/opt_group_element.h (100%) rename ext/{dom => }/lexbor/lexbor/html/interfaces/option_element.c (100%) rename ext/{dom => }/lexbor/lexbor/html/interfaces/option_element.h (100%) rename ext/{dom => }/lexbor/lexbor/html/interfaces/output_element.c (100%) rename ext/{dom => }/lexbor/lexbor/html/interfaces/output_element.h (100%) rename ext/{dom => }/lexbor/lexbor/html/interfaces/paragraph_element.c (100%) rename ext/{dom => }/lexbor/lexbor/html/interfaces/paragraph_element.h (100%) rename ext/{dom => }/lexbor/lexbor/html/interfaces/param_element.c (100%) rename ext/{dom => }/lexbor/lexbor/html/interfaces/param_element.h (100%) rename ext/{dom => }/lexbor/lexbor/html/interfaces/picture_element.c (100%) rename ext/{dom => }/lexbor/lexbor/html/interfaces/picture_element.h (100%) rename ext/{dom => }/lexbor/lexbor/html/interfaces/pre_element.c (100%) rename ext/{dom => }/lexbor/lexbor/html/interfaces/pre_element.h (100%) rename ext/{dom => }/lexbor/lexbor/html/interfaces/progress_element.c (100%) rename ext/{dom => }/lexbor/lexbor/html/interfaces/progress_element.h (100%) rename ext/{dom => }/lexbor/lexbor/html/interfaces/quote_element.c (100%) rename ext/{dom => }/lexbor/lexbor/html/interfaces/quote_element.h (100%) rename ext/{dom => }/lexbor/lexbor/html/interfaces/script_element.c (100%) rename ext/{dom => }/lexbor/lexbor/html/interfaces/script_element.h (100%) rename ext/{dom => }/lexbor/lexbor/html/interfaces/select_element.c (100%) rename ext/{dom => }/lexbor/lexbor/html/interfaces/select_element.h (100%) rename ext/{dom => }/lexbor/lexbor/html/interfaces/slot_element.c (100%) rename ext/{dom => }/lexbor/lexbor/html/interfaces/slot_element.h (100%) rename ext/{dom => }/lexbor/lexbor/html/interfaces/source_element.c (100%) rename ext/{dom => }/lexbor/lexbor/html/interfaces/source_element.h (100%) rename ext/{dom => }/lexbor/lexbor/html/interfaces/span_element.c (100%) rename ext/{dom => }/lexbor/lexbor/html/interfaces/span_element.h (100%) rename ext/{dom => }/lexbor/lexbor/html/interfaces/style_element.c (100%) rename ext/{dom => }/lexbor/lexbor/html/interfaces/style_element.h (100%) rename ext/{dom => }/lexbor/lexbor/html/interfaces/table_caption_element.c (100%) rename ext/{dom => }/lexbor/lexbor/html/interfaces/table_caption_element.h (100%) rename ext/{dom => }/lexbor/lexbor/html/interfaces/table_cell_element.c (100%) rename ext/{dom => }/lexbor/lexbor/html/interfaces/table_cell_element.h (100%) rename ext/{dom => }/lexbor/lexbor/html/interfaces/table_col_element.c (100%) rename ext/{dom => }/lexbor/lexbor/html/interfaces/table_col_element.h (100%) rename ext/{dom => }/lexbor/lexbor/html/interfaces/table_element.c (100%) rename ext/{dom => }/lexbor/lexbor/html/interfaces/table_element.h (100%) rename ext/{dom => }/lexbor/lexbor/html/interfaces/table_row_element.c (100%) rename ext/{dom => }/lexbor/lexbor/html/interfaces/table_row_element.h (100%) rename ext/{dom => }/lexbor/lexbor/html/interfaces/table_section_element.c (100%) rename ext/{dom => }/lexbor/lexbor/html/interfaces/table_section_element.h (100%) rename ext/{dom => }/lexbor/lexbor/html/interfaces/template_element.c (100%) rename ext/{dom => }/lexbor/lexbor/html/interfaces/template_element.h (100%) rename ext/{dom => }/lexbor/lexbor/html/interfaces/text_area_element.c (100%) rename ext/{dom => }/lexbor/lexbor/html/interfaces/text_area_element.h (100%) rename ext/{dom => }/lexbor/lexbor/html/interfaces/time_element.c (100%) rename ext/{dom => }/lexbor/lexbor/html/interfaces/time_element.h (100%) rename ext/{dom => }/lexbor/lexbor/html/interfaces/title_element.c (100%) rename ext/{dom => }/lexbor/lexbor/html/interfaces/title_element.h (100%) rename ext/{dom => }/lexbor/lexbor/html/interfaces/track_element.c (100%) rename ext/{dom => }/lexbor/lexbor/html/interfaces/track_element.h (100%) rename ext/{dom => }/lexbor/lexbor/html/interfaces/u_list_element.c (100%) rename ext/{dom => }/lexbor/lexbor/html/interfaces/u_list_element.h (100%) rename ext/{dom => }/lexbor/lexbor/html/interfaces/unknown_element.c (100%) rename ext/{dom => }/lexbor/lexbor/html/interfaces/unknown_element.h (100%) rename ext/{dom => }/lexbor/lexbor/html/interfaces/video_element.c (100%) rename ext/{dom => }/lexbor/lexbor/html/interfaces/video_element.h (100%) rename ext/{dom => }/lexbor/lexbor/html/interfaces/window.c (100%) rename ext/{dom => }/lexbor/lexbor/html/interfaces/window.h (100%) rename ext/{dom => }/lexbor/lexbor/html/node.c (100%) rename ext/{dom => }/lexbor/lexbor/html/node.h (100%) rename ext/{dom => }/lexbor/lexbor/html/parser.c (100%) rename ext/{dom => }/lexbor/lexbor/html/parser.h (100%) rename ext/{dom => }/lexbor/lexbor/html/serialize.h (100%) rename ext/{dom => }/lexbor/lexbor/html/style.c (100%) rename ext/{dom => }/lexbor/lexbor/html/style.h (100%) rename ext/{dom => }/lexbor/lexbor/html/tag.h (100%) rename ext/{dom => }/lexbor/lexbor/html/tag_res.h (100%) rename ext/{dom => }/lexbor/lexbor/html/token.c (100%) rename ext/{dom => }/lexbor/lexbor/html/token.h (100%) rename ext/{dom => }/lexbor/lexbor/html/token_attr.c (100%) rename ext/{dom => }/lexbor/lexbor/html/token_attr.h (100%) rename ext/{dom => }/lexbor/lexbor/html/tokenizer.c (100%) rename ext/{dom => }/lexbor/lexbor/html/tokenizer.h (100%) rename ext/{dom => }/lexbor/lexbor/html/tokenizer/error.c (100%) rename ext/{dom => }/lexbor/lexbor/html/tokenizer/error.h (100%) rename ext/{dom => }/lexbor/lexbor/html/tokenizer/res.h (100%) rename ext/{dom => }/lexbor/lexbor/html/tokenizer/state.c (100%) rename ext/{dom => }/lexbor/lexbor/html/tokenizer/state.h (100%) rename ext/{dom => }/lexbor/lexbor/html/tokenizer/state_comment.c (100%) rename ext/{dom => }/lexbor/lexbor/html/tokenizer/state_comment.h (100%) rename ext/{dom => }/lexbor/lexbor/html/tokenizer/state_doctype.c (100%) rename ext/{dom => }/lexbor/lexbor/html/tokenizer/state_doctype.h (100%) rename ext/{dom => }/lexbor/lexbor/html/tokenizer/state_rawtext.c (100%) rename ext/{dom => }/lexbor/lexbor/html/tokenizer/state_rawtext.h (100%) rename ext/{dom => }/lexbor/lexbor/html/tokenizer/state_rcdata.c (100%) rename ext/{dom => }/lexbor/lexbor/html/tokenizer/state_rcdata.h (100%) rename ext/{dom => }/lexbor/lexbor/html/tokenizer/state_script.c (100%) rename ext/{dom => }/lexbor/lexbor/html/tokenizer/state_script.h (100%) rename ext/{dom => }/lexbor/lexbor/html/tree.c (100%) rename ext/{dom => }/lexbor/lexbor/html/tree.h (100%) rename ext/{dom => }/lexbor/lexbor/html/tree/active_formatting.c (100%) rename ext/{dom => }/lexbor/lexbor/html/tree/active_formatting.h (100%) rename ext/{dom => }/lexbor/lexbor/html/tree/error.c (100%) rename ext/{dom => }/lexbor/lexbor/html/tree/error.h (100%) rename ext/{dom => }/lexbor/lexbor/html/tree/insertion_mode.h (100%) rename ext/{dom => }/lexbor/lexbor/html/tree/insertion_mode/after_after_body.c (100%) rename ext/{dom => }/lexbor/lexbor/html/tree/insertion_mode/after_after_frameset.c (100%) rename ext/{dom => }/lexbor/lexbor/html/tree/insertion_mode/after_body.c (100%) rename ext/{dom => }/lexbor/lexbor/html/tree/insertion_mode/after_frameset.c (100%) rename ext/{dom => }/lexbor/lexbor/html/tree/insertion_mode/after_head.c (100%) rename ext/{dom => }/lexbor/lexbor/html/tree/insertion_mode/before_head.c (100%) rename ext/{dom => }/lexbor/lexbor/html/tree/insertion_mode/before_html.c (100%) rename ext/{dom => }/lexbor/lexbor/html/tree/insertion_mode/foreign_content.c (100%) rename ext/{dom => }/lexbor/lexbor/html/tree/insertion_mode/in_body.c (100%) rename ext/{dom => }/lexbor/lexbor/html/tree/insertion_mode/in_caption.c (100%) rename ext/{dom => }/lexbor/lexbor/html/tree/insertion_mode/in_cell.c (100%) rename ext/{dom => }/lexbor/lexbor/html/tree/insertion_mode/in_column_group.c (100%) rename ext/{dom => }/lexbor/lexbor/html/tree/insertion_mode/in_frameset.c (100%) rename ext/{dom => }/lexbor/lexbor/html/tree/insertion_mode/in_head.c (100%) rename ext/{dom => }/lexbor/lexbor/html/tree/insertion_mode/in_head_noscript.c (100%) rename ext/{dom => }/lexbor/lexbor/html/tree/insertion_mode/in_row.c (100%) rename ext/{dom => }/lexbor/lexbor/html/tree/insertion_mode/in_select.c (100%) rename ext/{dom => }/lexbor/lexbor/html/tree/insertion_mode/in_select_in_table.c (100%) rename ext/{dom => }/lexbor/lexbor/html/tree/insertion_mode/in_table.c (100%) rename ext/{dom => }/lexbor/lexbor/html/tree/insertion_mode/in_table_body.c (100%) rename ext/{dom => }/lexbor/lexbor/html/tree/insertion_mode/in_table_text.c (100%) rename ext/{dom => }/lexbor/lexbor/html/tree/insertion_mode/in_template.c (100%) rename ext/{dom => }/lexbor/lexbor/html/tree/insertion_mode/initial.c (100%) rename ext/{dom => }/lexbor/lexbor/html/tree/insertion_mode/text.c (100%) rename ext/{dom => }/lexbor/lexbor/html/tree/open_elements.c (100%) rename ext/{dom => }/lexbor/lexbor/html/tree/open_elements.h (100%) rename ext/{dom => }/lexbor/lexbor/html/tree/template_insertion.c (100%) rename ext/{dom => }/lexbor/lexbor/html/tree/template_insertion.h (100%) rename ext/{dom => }/lexbor/lexbor/html/tree_res.h (100%) rename ext/{dom => }/lexbor/lexbor/ns/base.h (100%) rename ext/{dom => }/lexbor/lexbor/ns/const.h (100%) rename ext/{dom => }/lexbor/lexbor/ns/ns.c (100%) rename ext/{dom => }/lexbor/lexbor/ns/ns.h (100%) rename ext/{dom => }/lexbor/lexbor/ns/res.h (100%) rename ext/{dom => }/lexbor/lexbor/ports/posix/lexbor/core/memory.c (100%) rename ext/{dom => }/lexbor/lexbor/ports/windows_nt/lexbor/core/memory.c (100%) rename ext/{dom => }/lexbor/lexbor/selectors/base.h (100%) rename ext/{dom => }/lexbor/lexbor/selectors/selectors.c (100%) rename ext/{dom => }/lexbor/lexbor/selectors/selectors.h (100%) rename ext/{dom => }/lexbor/lexbor/tag/base.h (100%) rename ext/{dom => }/lexbor/lexbor/tag/const.h (100%) rename ext/{dom => }/lexbor/lexbor/tag/res.h (100%) rename ext/{dom => }/lexbor/lexbor/tag/tag.c (100%) rename ext/{dom => }/lexbor/lexbor/tag/tag.h (100%) rename ext/{dom => }/lexbor/patches/0001-Expose-line-and-column-information-for-use-in-PHP.patch (100%) rename ext/{dom => }/lexbor/patches/0002-Track-implied-added-nodes-for-options-use-in-PHP.patch (100%) rename ext/{dom => }/lexbor/patches/0003-Patch-utilities-and-data-structure-to-be-able-to-gen.patch (100%) rename ext/{dom => }/lexbor/patches/0004-Remove-unused-upper-case-tag-static-data.patch (100%) rename ext/{dom => }/lexbor/patches/0005-Shrink-size-of-static-binary-search-tree.patch (100%) rename ext/{dom => }/lexbor/patches/0006-Patch-out-unused-CSS-style-code.patch (100%) rename ext/{dom => }/lexbor/patches/README.md (100%) create mode 100644 ext/lexbor/php_lexbor.c create mode 100644 ext/lexbor/php_lexbor.h diff --git a/.gitignore b/.gitignore index 55c441323cf15..3c4566ed663c3 100644 --- a/.gitignore +++ b/.gitignore @@ -306,6 +306,6 @@ tmp-php.ini !/ext/fileinfo/libmagic/config.h !/ext/fileinfo/libmagic.patch !/ext/fileinfo/magicdata.patch -!/ext/dom/lexbor/patches/*.patch +!/ext/lexbor/patches/*.patch !/ext/pcre/pcre2lib/config.h !/win32/build/Makefile diff --git a/EXTENSIONS b/EXTENSIONS index 2ceb1afd5050e..595017a4e22ac 100644 --- a/EXTENSIONS +++ b/EXTENSIONS @@ -195,6 +195,13 @@ PRIMARY MAINTAINER: Thies C. Arntzen (1999 - 2002) MAINTENANCE: Maintained STATUS: Working ------------------------------------------------------------------------------- +EXTENSION: lexbor +PRIMARY MAINTAINER: Niels Dossche (2023 - 2025) + Mate Kocsis (2025 - 2025) +MAINTENANCE: Maintained +STATUS: Working +SINCE: 5.0 +------------------------------------------------------------------------------- EXTENSION: libxml PRIMARY MAINTAINER: Rob Richards (2003 - 2009) Christian Stocker (2004 - 2011) diff --git a/ext/dom/config.m4 b/ext/dom/config.m4 index c6c67ced36e51..13888f51ddc73 100644 --- a/ext/dom/config.m4 +++ b/ext/dom/config.m4 @@ -5,188 +5,11 @@ PHP_ARG_ENABLE([dom], [yes]) if test "$PHP_DOM" != "no"; then + PHP_LEXBOR_ENABLED=yes + PHP_SETUP_LIBXML([DOM_SHARED_LIBADD], [ AC_DEFINE([HAVE_DOM], [1], [Define to 1 if the PHP extension 'dom' is available.]) - PHP_LEXBOR_CFLAGS="-I@ext_srcdir@/lexbor -DLEXBOR_STATIC" - LEXBOR_DIR="lexbor/lexbor" - LEXBOR_SOURCES=m4_normalize([" - $LEXBOR_DIR/core/array_obj.c - $LEXBOR_DIR/core/array.c - $LEXBOR_DIR/core/avl.c - $LEXBOR_DIR/core/bst.c - $LEXBOR_DIR/core/conv.c - $LEXBOR_DIR/core/diyfp.c - $LEXBOR_DIR/core/dobject.c - $LEXBOR_DIR/core/dtoa.c - $LEXBOR_DIR/core/hash.c - $LEXBOR_DIR/core/mem.c - $LEXBOR_DIR/core/mraw.c - $LEXBOR_DIR/core/print.c - $LEXBOR_DIR/core/serialize.c - $LEXBOR_DIR/core/shs.c - $LEXBOR_DIR/core/str.c - $LEXBOR_DIR/core/strtod.c - $LEXBOR_DIR/css/css.c - $LEXBOR_DIR/css/log.c - $LEXBOR_DIR/css/parser.c - $LEXBOR_DIR/css/selectors/pseudo_state.c - $LEXBOR_DIR/css/selectors/pseudo.c - $LEXBOR_DIR/css/selectors/selector.c - $LEXBOR_DIR/css/selectors/selectors.c - $LEXBOR_DIR/css/selectors/state.c - $LEXBOR_DIR/css/state.c - $LEXBOR_DIR/css/syntax/anb.c - $LEXBOR_DIR/css/syntax/parser.c - $LEXBOR_DIR/css/syntax/state.c - $LEXBOR_DIR/css/syntax/syntax.c - $LEXBOR_DIR/css/syntax/token.c - $LEXBOR_DIR/css/syntax/tokenizer.c - $LEXBOR_DIR/css/syntax/tokenizer/error.c - $LEXBOR_DIR/dom/interface.c - $LEXBOR_DIR/dom/interfaces/attr.c - $LEXBOR_DIR/dom/interfaces/cdata_section.c - $LEXBOR_DIR/dom/interfaces/character_data.c - $LEXBOR_DIR/dom/interfaces/comment.c - $LEXBOR_DIR/dom/interfaces/document_fragment.c - $LEXBOR_DIR/dom/interfaces/document_type.c - $LEXBOR_DIR/dom/interfaces/document.c - $LEXBOR_DIR/dom/interfaces/element.c - $LEXBOR_DIR/dom/interfaces/node.c - $LEXBOR_DIR/dom/interfaces/processing_instruction.c - $LEXBOR_DIR/dom/interfaces/shadow_root.c - $LEXBOR_DIR/dom/interfaces/text.c - $LEXBOR_DIR/encoding/big5.c - $LEXBOR_DIR/encoding/decode.c - $LEXBOR_DIR/encoding/encode.c - $LEXBOR_DIR/encoding/encoding.c - $LEXBOR_DIR/encoding/euc_kr.c - $LEXBOR_DIR/encoding/gb18030.c - $LEXBOR_DIR/encoding/iso_2022_jp_katakana.c - $LEXBOR_DIR/encoding/jis0208.c - $LEXBOR_DIR/encoding/jis0212.c - $LEXBOR_DIR/encoding/range.c - $LEXBOR_DIR/encoding/res.c - $LEXBOR_DIR/encoding/single.c - $LEXBOR_DIR/html/encoding.c - $LEXBOR_DIR/html/interface.c - $LEXBOR_DIR/html/interfaces/anchor_element.c - $LEXBOR_DIR/html/interfaces/area_element.c - $LEXBOR_DIR/html/interfaces/audio_element.c - $LEXBOR_DIR/html/interfaces/base_element.c - $LEXBOR_DIR/html/interfaces/body_element.c - $LEXBOR_DIR/html/interfaces/br_element.c - $LEXBOR_DIR/html/interfaces/button_element.c - $LEXBOR_DIR/html/interfaces/canvas_element.c - $LEXBOR_DIR/html/interfaces/d_list_element.c - $LEXBOR_DIR/html/interfaces/data_element.c - $LEXBOR_DIR/html/interfaces/data_list_element.c - $LEXBOR_DIR/html/interfaces/details_element.c - $LEXBOR_DIR/html/interfaces/dialog_element.c - $LEXBOR_DIR/html/interfaces/directory_element.c - $LEXBOR_DIR/html/interfaces/div_element.c - $LEXBOR_DIR/html/interfaces/document.c - $LEXBOR_DIR/html/interfaces/element.c - $LEXBOR_DIR/html/interfaces/embed_element.c - $LEXBOR_DIR/html/interfaces/field_set_element.c - $LEXBOR_DIR/html/interfaces/font_element.c - $LEXBOR_DIR/html/interfaces/form_element.c - $LEXBOR_DIR/html/interfaces/frame_element.c - $LEXBOR_DIR/html/interfaces/frame_set_element.c - $LEXBOR_DIR/html/interfaces/head_element.c - $LEXBOR_DIR/html/interfaces/heading_element.c - $LEXBOR_DIR/html/interfaces/hr_element.c - $LEXBOR_DIR/html/interfaces/html_element.c - $LEXBOR_DIR/html/interfaces/iframe_element.c - $LEXBOR_DIR/html/interfaces/image_element.c - $LEXBOR_DIR/html/interfaces/input_element.c - $LEXBOR_DIR/html/interfaces/label_element.c - $LEXBOR_DIR/html/interfaces/legend_element.c - $LEXBOR_DIR/html/interfaces/li_element.c - $LEXBOR_DIR/html/interfaces/link_element.c - $LEXBOR_DIR/html/interfaces/map_element.c - $LEXBOR_DIR/html/interfaces/marquee_element.c - $LEXBOR_DIR/html/interfaces/media_element.c - $LEXBOR_DIR/html/interfaces/menu_element.c - $LEXBOR_DIR/html/interfaces/meta_element.c - $LEXBOR_DIR/html/interfaces/meter_element.c - $LEXBOR_DIR/html/interfaces/mod_element.c - $LEXBOR_DIR/html/interfaces/o_list_element.c - $LEXBOR_DIR/html/interfaces/object_element.c - $LEXBOR_DIR/html/interfaces/opt_group_element.c - $LEXBOR_DIR/html/interfaces/option_element.c - $LEXBOR_DIR/html/interfaces/output_element.c - $LEXBOR_DIR/html/interfaces/paragraph_element.c - $LEXBOR_DIR/html/interfaces/param_element.c - $LEXBOR_DIR/html/interfaces/picture_element.c - $LEXBOR_DIR/html/interfaces/pre_element.c - $LEXBOR_DIR/html/interfaces/progress_element.c - $LEXBOR_DIR/html/interfaces/quote_element.c - $LEXBOR_DIR/html/interfaces/script_element.c - $LEXBOR_DIR/html/interfaces/select_element.c - $LEXBOR_DIR/html/interfaces/slot_element.c - $LEXBOR_DIR/html/interfaces/source_element.c - $LEXBOR_DIR/html/interfaces/span_element.c - $LEXBOR_DIR/html/interfaces/style_element.c - $LEXBOR_DIR/html/interfaces/table_caption_element.c - $LEXBOR_DIR/html/interfaces/table_cell_element.c - $LEXBOR_DIR/html/interfaces/table_col_element.c - $LEXBOR_DIR/html/interfaces/table_element.c - $LEXBOR_DIR/html/interfaces/table_row_element.c - $LEXBOR_DIR/html/interfaces/table_section_element.c - $LEXBOR_DIR/html/interfaces/template_element.c - $LEXBOR_DIR/html/interfaces/text_area_element.c - $LEXBOR_DIR/html/interfaces/time_element.c - $LEXBOR_DIR/html/interfaces/title_element.c - $LEXBOR_DIR/html/interfaces/track_element.c - $LEXBOR_DIR/html/interfaces/u_list_element.c - $LEXBOR_DIR/html/interfaces/unknown_element.c - $LEXBOR_DIR/html/interfaces/video_element.c - $LEXBOR_DIR/html/interfaces/window.c - $LEXBOR_DIR/html/parser.c - $LEXBOR_DIR/html/token_attr.c - $LEXBOR_DIR/html/token.c - $LEXBOR_DIR/html/tokenizer.c - $LEXBOR_DIR/html/tokenizer/error.c - $LEXBOR_DIR/html/tokenizer/state_comment.c - $LEXBOR_DIR/html/tokenizer/state_doctype.c - $LEXBOR_DIR/html/tokenizer/state_rawtext.c - $LEXBOR_DIR/html/tokenizer/state_rcdata.c - $LEXBOR_DIR/html/tokenizer/state_script.c - $LEXBOR_DIR/html/tokenizer/state.c - $LEXBOR_DIR/html/tree.c - $LEXBOR_DIR/html/tree/active_formatting.c - $LEXBOR_DIR/html/tree/error.c - $LEXBOR_DIR/html/tree/insertion_mode/after_after_body.c - $LEXBOR_DIR/html/tree/insertion_mode/after_after_frameset.c - $LEXBOR_DIR/html/tree/insertion_mode/after_body.c - $LEXBOR_DIR/html/tree/insertion_mode/after_frameset.c - $LEXBOR_DIR/html/tree/insertion_mode/after_head.c - $LEXBOR_DIR/html/tree/insertion_mode/before_head.c - $LEXBOR_DIR/html/tree/insertion_mode/before_html.c - $LEXBOR_DIR/html/tree/insertion_mode/foreign_content.c - $LEXBOR_DIR/html/tree/insertion_mode/in_body.c - $LEXBOR_DIR/html/tree/insertion_mode/in_caption.c - $LEXBOR_DIR/html/tree/insertion_mode/in_cell.c - $LEXBOR_DIR/html/tree/insertion_mode/in_column_group.c - $LEXBOR_DIR/html/tree/insertion_mode/in_frameset.c - $LEXBOR_DIR/html/tree/insertion_mode/in_head_noscript.c - $LEXBOR_DIR/html/tree/insertion_mode/in_head.c - $LEXBOR_DIR/html/tree/insertion_mode/in_row.c - $LEXBOR_DIR/html/tree/insertion_mode/in_select_in_table.c - $LEXBOR_DIR/html/tree/insertion_mode/in_select.c - $LEXBOR_DIR/html/tree/insertion_mode/in_table_body.c - $LEXBOR_DIR/html/tree/insertion_mode/in_table_text.c - $LEXBOR_DIR/html/tree/insertion_mode/in_table.c - $LEXBOR_DIR/html/tree/insertion_mode/in_template.c - $LEXBOR_DIR/html/tree/insertion_mode/initial.c - $LEXBOR_DIR/html/tree/insertion_mode/text.c - $LEXBOR_DIR/html/tree/open_elements.c - $LEXBOR_DIR/ns/ns.c - $LEXBOR_DIR/ports/posix/lexbor/core/memory.c - $LEXBOR_DIR/selectors-adapted/selectors.c - $LEXBOR_DIR/tag/tag.c - "]) PHP_NEW_EXTENSION([dom], m4_normalize([ attr.c cdatasection.c @@ -223,25 +46,13 @@ if test "$PHP_DOM" != "no"; then xml_serializer.c xpath_callbacks.c xpath.c - $LEXBOR_SOURCES + lexbor/selectors-adapted/selectors.c ]), [$ext_shared],, - [$PHP_LEXBOR_CFLAGS]) + []) PHP_ADD_BUILD_DIR([ $ext_builddir/parentnode - $ext_builddir/$LEXBOR_DIR/core - $ext_builddir/$LEXBOR_DIR/css/selectors - $ext_builddir/$LEXBOR_DIR/css/syntax/tokenizer - $ext_builddir/$LEXBOR_DIR/css/tokenizer - $ext_builddir/$LEXBOR_DIR/dom/interfaces - $ext_builddir/$LEXBOR_DIR/encoding - $ext_builddir/$LEXBOR_DIR/html/interfaces - $ext_builddir/$LEXBOR_DIR/html/tokenizer - $ext_builddir/$LEXBOR_DIR/html/tree/insertion_mode - $ext_builddir/$LEXBOR_DIR/ns - $ext_builddir/$LEXBOR_DIR/ports/posix/lexbor/core - $ext_builddir/$LEXBOR_DIR/selectors-adapted - $ext_builddir/$LEXBOR_DIR/tag + $ext_builddir/lexbor/selectors-adapted ]) PHP_SUBST([DOM_SHARED_LIBADD]) PHP_INSTALL_HEADERS([ext/dom], m4_normalize([ @@ -251,5 +62,6 @@ if test "$PHP_DOM" != "no"; then xpath_callbacks.h ])) PHP_ADD_EXTENSION_DEP(dom, libxml) + PHP_ADD_EXTENSION_DEP(dom, lexbor) ]) fi diff --git a/ext/dom/config.w32 b/ext/dom/config.w32 index 1db4f6d11ba14..4bbbd719f271f 100644 --- a/ext/dom/config.w32 +++ b/ext/dom/config.w32 @@ -5,6 +5,7 @@ ARG_WITH("dom", "DOM support", "yes"); if (PHP_DOM == "yes") { if (PHP_LIBXML == "yes" && ADD_EXTENSION_DEP('dom', 'libxml') && + ADD_EXTENSION_DEP('dom', 'lexbor') && CHECK_HEADER_ADD_INCLUDE("libxml/parser.h", "CFLAGS_DOM", PHP_PHP_BUILD + "\\include\\libxml2") ) { EXTENSION("dom", "php_dom.c attr.c document.c infra.c \ @@ -16,27 +17,10 @@ if (PHP_DOM == "yes") { entityreference.c \ token_list.c \ notation.c xpath.c dom_iterators.c \ - namednodemap.c xpath_callbacks.c", null, "-Iext/dom/lexbor"); + namednodemap.c xpath_callbacks.c", null, ""); ADD_SOURCES("ext/dom/parentnode", "tree.c css_selectors.c", "dom"); - ADD_SOURCES("ext/dom/lexbor/lexbor/ports/windows_nt/lexbor/core", "memory.c", "dom"); - ADD_SOURCES("ext/dom/lexbor/lexbor/core", "array_obj.c array.c avl.c bst.c diyfp.c conv.c dobject.c dtoa.c hash.c mem.c mraw.c print.c serialize.c shs.c str.c strtod.c", "dom"); - ADD_SOURCES("ext/dom/lexbor/lexbor/dom", "interface.c", "dom"); - ADD_SOURCES("ext/dom/lexbor/lexbor/dom/interfaces", "attr.c cdata_section.c character_data.c comment.c document.c document_fragment.c document_type.c element.c node.c processing_instruction.c shadow_root.c text.c", "dom"); - ADD_SOURCES("ext/dom/lexbor/lexbor/html/tokenizer", "error.c state_comment.c state_doctype.c state_rawtext.c state_rcdata.c state_script.c state.c", "dom"); - ADD_SOURCES("ext/dom/lexbor/lexbor/html/tree", "active_formatting.c open_elements.c error.c", "dom"); - ADD_SOURCES("ext/dom/lexbor/lexbor/html/tree/insertion_mode", "after_after_body.c after_after_frameset.c after_body.c after_frameset.c after_head.c before_head.c before_html.c foreign_content.c in_body.c in_caption.c in_cell.c in_column_group.c in_frameset.c in_head.c in_head_noscript.c initial.c in_row.c in_select.c in_select_in_table.c in_table_body.c in_table.c in_table_text.c in_template.c text.c", "dom"); - ADD_SOURCES("ext/dom/lexbor/lexbor/html", "encoding.c interface.c parser.c token.c token_attr.c tokenizer.c tree.c", "dom"); - ADD_SOURCES("ext/dom/lexbor/lexbor/encoding", "big5.c decode.c encode.c encoding.c euc_kr.c gb18030.c iso_2022_jp_katakana.c jis0208.c jis0212.c range.c res.c single.c", "dom"); - ADD_SOURCES("ext/dom/lexbor/lexbor/html/interfaces", "anchor_element.c area_element.c audio_element.c base_element.c body_element.c br_element.c button_element.c canvas_element.c data_element.c data_list_element.c details_element.c dialog_element.c directory_element.c div_element.c d_list_element.c document.c element.c embed_element.c field_set_element.c font_element.c form_element.c frame_element.c frame_set_element.c head_element.c heading_element.c hr_element.c html_element.c iframe_element.c image_element.c input_element.c label_element.c legend_element.c li_element.c link_element.c map_element.c marquee_element.c media_element.c menu_element.c meta_element.c meter_element.c mod_element.c object_element.c o_list_element.c opt_group_element.c option_element.c output_element.c paragraph_element.c param_element.c picture_element.c pre_element.c progress_element.c quote_element.c script_element.c select_element.c slot_element.c source_element.c span_element.c style_element.c table_caption_element.c table_cell_element.c table_col_element.c table_element.c table_row_element.c table_section_element.c template_element.c text_area_element.c time_element.c title_element.c track_element.c u_list_element.c unknown_element.c video_element.c window.c", "dom"); - ADD_SOURCES("ext/dom/lexbor/lexbor/selectors-adapted", "selectors.c", "dom"); - ADD_SOURCES("ext/dom/lexbor/lexbor/css", "state.c log.c parser.c css.c", "dom"); - ADD_SOURCES("ext/dom/lexbor/lexbor/css/selectors", "state.c selectors.c selector.c pseudo_state.c pseudo.c", "dom"); - ADD_SOURCES("ext/dom/lexbor/lexbor/css/syntax", "state.c parser.c syntax.c anb.c tokenizer.c token.c", "dom"); - ADD_SOURCES("ext/dom/lexbor/lexbor/css/syntax/tokenizer", "error.c", "dom"); - ADD_SOURCES("ext/dom/lexbor/lexbor/ns", "ns.c", "dom"); - ADD_SOURCES("ext/dom/lexbor/lexbor/tag", "tag.c", "dom"); - ADD_FLAG("CFLAGS_DOM", "/D LEXBOR_STATIC "); + ADD_SOURCES("ext/dom/lexbor/selectors-adapted", "selectors.c", "dom"); AC_DEFINE("HAVE_DOM", 1, "Define to 1 if the PHP extension 'dom' is available."); diff --git a/ext/dom/lexbor/lexbor/selectors-adapted/selectors.c b/ext/dom/lexbor/selectors-adapted/selectors.c similarity index 99% rename from ext/dom/lexbor/lexbor/selectors-adapted/selectors.c rename to ext/dom/lexbor/selectors-adapted/selectors.c index 67aefde4f9016..5970bfdc27534 100644 --- a/ext/dom/lexbor/lexbor/selectors-adapted/selectors.c +++ b/ext/dom/lexbor/selectors-adapted/selectors.c @@ -14,9 +14,9 @@ #include #include "lexbor/selectors-adapted/selectors.h" -#include "../../../namespace_compat.h" -#include "../../../domexception.h" -#include "../../../php_dom.h" +#include "../../namespace_compat.h" +#include "../../domexception.h" +#include "../../php_dom.h" #include diff --git a/ext/dom/lexbor/lexbor/selectors-adapted/selectors.h b/ext/dom/lexbor/selectors-adapted/selectors.h similarity index 100% rename from ext/dom/lexbor/lexbor/selectors-adapted/selectors.h rename to ext/dom/lexbor/selectors-adapted/selectors.h diff --git a/ext/dom/php_dom.c b/ext/dom/php_dom.c index 0751284bdc976..bb51c025929d4 100644 --- a/ext/dom/php_dom.c +++ b/ext/dom/php_dom.c @@ -33,8 +33,8 @@ #include "dom_properties.h" #include "token_list.h" #include "zend_interfaces.h" -#include "lexbor/lexbor/core/types.h" -#include "lexbor/lexbor/core/lexbor.h" +#include +#include #include "ext/standard/info.h" diff --git a/ext/dom/lexbor/LICENSE b/ext/lexbor/LICENSE similarity index 100% rename from ext/dom/lexbor/LICENSE rename to ext/lexbor/LICENSE diff --git a/ext/dom/lexbor/NOTICE b/ext/lexbor/NOTICE similarity index 100% rename from ext/dom/lexbor/NOTICE rename to ext/lexbor/NOTICE diff --git a/ext/lexbor/config.m4 b/ext/lexbor/config.m4 new file mode 100644 index 0000000000000..31264f9946c6c --- /dev/null +++ b/ext/lexbor/config.m4 @@ -0,0 +1,217 @@ +PHP_ARG_ENABLE([lexbor], + [whether to enable lexbor], + [AS_HELP_STRING([--enable-lexbor], + [Enable lexbor explicitly, will be done implicitly when required by other + extensions])], + [no], + [yes]) + +if test "$PHP_LEXBOR" != "no" || test "$PHP_LEXBOR_ENABLED" = "yes"; then + PHP_LEXBOR_CFLAGS="-I@ext_srcdir@/ -DLEXBOR_STATIC" + LEXBOR_DIR="lexbor" + + AC_DEFINE([HAVE_LEXBOR], [1], [Define to 1 if the PHP extension 'lexbor' is available.]) + + PHP_NEW_EXTENSION([lexbor], m4_normalize([ + php_lexbor.c + $LEXBOR_DIR/core/array_obj.c + $LEXBOR_DIR/core/array.c + $LEXBOR_DIR/core/avl.c + $LEXBOR_DIR/core/bst.c + $LEXBOR_DIR/core/conv.c + $LEXBOR_DIR/core/diyfp.c + $LEXBOR_DIR/core/dobject.c + $LEXBOR_DIR/core/dtoa.c + $LEXBOR_DIR/core/hash.c + $LEXBOR_DIR/core/mem.c + $LEXBOR_DIR/core/mraw.c + $LEXBOR_DIR/core/print.c + $LEXBOR_DIR/core/serialize.c + $LEXBOR_DIR/core/shs.c + $LEXBOR_DIR/core/str.c + $LEXBOR_DIR/core/strtod.c + $LEXBOR_DIR/css/css.c + $LEXBOR_DIR/css/log.c + $LEXBOR_DIR/css/parser.c + $LEXBOR_DIR/css/selectors/pseudo_state.c + $LEXBOR_DIR/css/selectors/pseudo.c + $LEXBOR_DIR/css/selectors/selector.c + $LEXBOR_DIR/css/selectors/selectors.c + $LEXBOR_DIR/css/selectors/state.c + $LEXBOR_DIR/css/state.c + $LEXBOR_DIR/css/syntax/anb.c + $LEXBOR_DIR/css/syntax/parser.c + $LEXBOR_DIR/css/syntax/state.c + $LEXBOR_DIR/css/syntax/syntax.c + $LEXBOR_DIR/css/syntax/token.c + $LEXBOR_DIR/css/syntax/tokenizer.c + $LEXBOR_DIR/css/syntax/tokenizer/error.c + $LEXBOR_DIR/dom/interface.c + $LEXBOR_DIR/dom/interfaces/attr.c + $LEXBOR_DIR/dom/interfaces/cdata_section.c + $LEXBOR_DIR/dom/interfaces/character_data.c + $LEXBOR_DIR/dom/interfaces/comment.c + $LEXBOR_DIR/dom/interfaces/document_fragment.c + $LEXBOR_DIR/dom/interfaces/document_type.c + $LEXBOR_DIR/dom/interfaces/document.c + $LEXBOR_DIR/dom/interfaces/element.c + $LEXBOR_DIR/dom/interfaces/node.c + $LEXBOR_DIR/dom/interfaces/processing_instruction.c + $LEXBOR_DIR/dom/interfaces/shadow_root.c + $LEXBOR_DIR/dom/interfaces/text.c + $LEXBOR_DIR/encoding/big5.c + $LEXBOR_DIR/encoding/decode.c + $LEXBOR_DIR/encoding/encode.c + $LEXBOR_DIR/encoding/encoding.c + $LEXBOR_DIR/encoding/euc_kr.c + $LEXBOR_DIR/encoding/gb18030.c + $LEXBOR_DIR/encoding/iso_2022_jp_katakana.c + $LEXBOR_DIR/encoding/jis0208.c + $LEXBOR_DIR/encoding/jis0212.c + $LEXBOR_DIR/encoding/range.c + $LEXBOR_DIR/encoding/res.c + $LEXBOR_DIR/encoding/single.c + $LEXBOR_DIR/html/encoding.c + $LEXBOR_DIR/html/interface.c + $LEXBOR_DIR/html/interfaces/anchor_element.c + $LEXBOR_DIR/html/interfaces/area_element.c + $LEXBOR_DIR/html/interfaces/audio_element.c + $LEXBOR_DIR/html/interfaces/base_element.c + $LEXBOR_DIR/html/interfaces/body_element.c + $LEXBOR_DIR/html/interfaces/br_element.c + $LEXBOR_DIR/html/interfaces/button_element.c + $LEXBOR_DIR/html/interfaces/canvas_element.c + $LEXBOR_DIR/html/interfaces/d_list_element.c + $LEXBOR_DIR/html/interfaces/data_element.c + $LEXBOR_DIR/html/interfaces/data_list_element.c + $LEXBOR_DIR/html/interfaces/details_element.c + $LEXBOR_DIR/html/interfaces/dialog_element.c + $LEXBOR_DIR/html/interfaces/directory_element.c + $LEXBOR_DIR/html/interfaces/div_element.c + $LEXBOR_DIR/html/interfaces/document.c + $LEXBOR_DIR/html/interfaces/element.c + $LEXBOR_DIR/html/interfaces/embed_element.c + $LEXBOR_DIR/html/interfaces/field_set_element.c + $LEXBOR_DIR/html/interfaces/font_element.c + $LEXBOR_DIR/html/interfaces/form_element.c + $LEXBOR_DIR/html/interfaces/frame_element.c + $LEXBOR_DIR/html/interfaces/frame_set_element.c + $LEXBOR_DIR/html/interfaces/head_element.c + $LEXBOR_DIR/html/interfaces/heading_element.c + $LEXBOR_DIR/html/interfaces/hr_element.c + $LEXBOR_DIR/html/interfaces/html_element.c + $LEXBOR_DIR/html/interfaces/iframe_element.c + $LEXBOR_DIR/html/interfaces/image_element.c + $LEXBOR_DIR/html/interfaces/input_element.c + $LEXBOR_DIR/html/interfaces/label_element.c + $LEXBOR_DIR/html/interfaces/legend_element.c + $LEXBOR_DIR/html/interfaces/li_element.c + $LEXBOR_DIR/html/interfaces/link_element.c + $LEXBOR_DIR/html/interfaces/map_element.c + $LEXBOR_DIR/html/interfaces/marquee_element.c + $LEXBOR_DIR/html/interfaces/media_element.c + $LEXBOR_DIR/html/interfaces/menu_element.c + $LEXBOR_DIR/html/interfaces/meta_element.c + $LEXBOR_DIR/html/interfaces/meter_element.c + $LEXBOR_DIR/html/interfaces/mod_element.c + $LEXBOR_DIR/html/interfaces/o_list_element.c + $LEXBOR_DIR/html/interfaces/object_element.c + $LEXBOR_DIR/html/interfaces/opt_group_element.c + $LEXBOR_DIR/html/interfaces/option_element.c + $LEXBOR_DIR/html/interfaces/output_element.c + $LEXBOR_DIR/html/interfaces/paragraph_element.c + $LEXBOR_DIR/html/interfaces/param_element.c + $LEXBOR_DIR/html/interfaces/picture_element.c + $LEXBOR_DIR/html/interfaces/pre_element.c + $LEXBOR_DIR/html/interfaces/progress_element.c + $LEXBOR_DIR/html/interfaces/quote_element.c + $LEXBOR_DIR/html/interfaces/script_element.c + $LEXBOR_DIR/html/interfaces/select_element.c + $LEXBOR_DIR/html/interfaces/slot_element.c + $LEXBOR_DIR/html/interfaces/source_element.c + $LEXBOR_DIR/html/interfaces/span_element.c + $LEXBOR_DIR/html/interfaces/style_element.c + $LEXBOR_DIR/html/interfaces/table_caption_element.c + $LEXBOR_DIR/html/interfaces/table_cell_element.c + $LEXBOR_DIR/html/interfaces/table_col_element.c + $LEXBOR_DIR/html/interfaces/table_element.c + $LEXBOR_DIR/html/interfaces/table_row_element.c + $LEXBOR_DIR/html/interfaces/table_section_element.c + $LEXBOR_DIR/html/interfaces/template_element.c + $LEXBOR_DIR/html/interfaces/text_area_element.c + $LEXBOR_DIR/html/interfaces/time_element.c + $LEXBOR_DIR/html/interfaces/title_element.c + $LEXBOR_DIR/html/interfaces/track_element.c + $LEXBOR_DIR/html/interfaces/u_list_element.c + $LEXBOR_DIR/html/interfaces/unknown_element.c + $LEXBOR_DIR/html/interfaces/video_element.c + $LEXBOR_DIR/html/interfaces/window.c + $LEXBOR_DIR/html/parser.c + $LEXBOR_DIR/html/token_attr.c + $LEXBOR_DIR/html/token.c + $LEXBOR_DIR/html/tokenizer.c + $LEXBOR_DIR/html/tokenizer/error.c + $LEXBOR_DIR/html/tokenizer/state_comment.c + $LEXBOR_DIR/html/tokenizer/state_doctype.c + $LEXBOR_DIR/html/tokenizer/state_rawtext.c + $LEXBOR_DIR/html/tokenizer/state_rcdata.c + $LEXBOR_DIR/html/tokenizer/state_script.c + $LEXBOR_DIR/html/tokenizer/state.c + $LEXBOR_DIR/html/tree.c + $LEXBOR_DIR/html/tree/active_formatting.c + $LEXBOR_DIR/html/tree/error.c + $LEXBOR_DIR/html/tree/insertion_mode/after_after_body.c + $LEXBOR_DIR/html/tree/insertion_mode/after_after_frameset.c + $LEXBOR_DIR/html/tree/insertion_mode/after_body.c + $LEXBOR_DIR/html/tree/insertion_mode/after_frameset.c + $LEXBOR_DIR/html/tree/insertion_mode/after_head.c + $LEXBOR_DIR/html/tree/insertion_mode/before_head.c + $LEXBOR_DIR/html/tree/insertion_mode/before_html.c + $LEXBOR_DIR/html/tree/insertion_mode/foreign_content.c + $LEXBOR_DIR/html/tree/insertion_mode/in_body.c + $LEXBOR_DIR/html/tree/insertion_mode/in_caption.c + $LEXBOR_DIR/html/tree/insertion_mode/in_cell.c + $LEXBOR_DIR/html/tree/insertion_mode/in_column_group.c + $LEXBOR_DIR/html/tree/insertion_mode/in_frameset.c + $LEXBOR_DIR/html/tree/insertion_mode/in_head_noscript.c + $LEXBOR_DIR/html/tree/insertion_mode/in_head.c + $LEXBOR_DIR/html/tree/insertion_mode/in_row.c + $LEXBOR_DIR/html/tree/insertion_mode/in_select_in_table.c + $LEXBOR_DIR/html/tree/insertion_mode/in_select.c + $LEXBOR_DIR/html/tree/insertion_mode/in_table_body.c + $LEXBOR_DIR/html/tree/insertion_mode/in_table_text.c + $LEXBOR_DIR/html/tree/insertion_mode/in_table.c + $LEXBOR_DIR/html/tree/insertion_mode/in_template.c + $LEXBOR_DIR/html/tree/insertion_mode/initial.c + $LEXBOR_DIR/html/tree/insertion_mode/text.c + $LEXBOR_DIR/html/tree/open_elements.c + $LEXBOR_DIR/ns/ns.c + $LEXBOR_DIR/ports/posix/lexbor/core/memory.c + $LEXBOR_DIR/tag/tag.c + ]), + [$ext_shared],, + [-DZEND_ENABLE_STATIC_TSRMLS_CACHE=1 $PHP_LEXBOR_CFLAGS]) + + PHP_ADD_BUILD_DIR([ + $ext_builddir/ + $ext_builddir/$LEXBOR_DIR/core + $ext_builddir/$LEXBOR_DIR/css/selectors + $ext_builddir/$LEXBOR_DIR/css/syntax/tokenizer + $ext_builddir/$LEXBOR_DIR/css/tokenizer + $ext_builddir/$LEXBOR_DIR/dom/interfaces + $ext_builddir/$LEXBOR_DIR/encoding + $ext_builddir/$LEXBOR_DIR/html + $ext_builddir/$LEXBOR_DIR/html/interfaces + $ext_builddir/$LEXBOR_DIR/html/tokenizer + $ext_builddir/$LEXBOR_DIR/html/tree/insertion_mode + $ext_builddir/$LEXBOR_DIR/ns + $ext_builddir/$LEXBOR_DIR/ports/posix/lexbor/core + $ext_builddir/$LEXBOR_DIR/tag + ]) + PHP_ADD_INCLUDE([$ext_srcdir]) + PHP_INSTALL_HEADERS([ext/lexbor], m4_normalize([ + php_lexbor.h + ])) + + PHP_SUBST([LEXBOR_SHARED_LIBADD]) +fi diff --git a/ext/lexbor/config.w32 b/ext/lexbor/config.w32 new file mode 100644 index 0000000000000..de34643727e54 --- /dev/null +++ b/ext/lexbor/config.w32 @@ -0,0 +1,30 @@ +// vim:ft=javascript + +ARG_ENABLE("lexbor", "Lexbor support", "yes"); + +if (PHP_LEXBOR == "yes") { + EXTENSION("lexbor", "php_lexbor.c", null, "-Iext/lexbor /DZEND_ENABLE_STATIC_TSRMLS_CACHE=1"); + + ADD_SOURCES("ext/lexbor", "php_lexbor.c", "lexbor"); + ADD_SOURCES("ext/lexbor/lexbor/ports/windows_nt/lexbor/core", "memory.c", "lexbor"); + ADD_SOURCES("ext/lexbor/lexbor/core", "array_obj.c array.c avl.c bst.c diyfp.c conv.c dobject.c dtoa.c hash.c mem.c mraw.c print.c serialize.c shs.c str.c strtod.c", "lexbor"); + ADD_SOURCES("ext/lexbor/lexbor/dom", "interface.c", "lexbor"); + ADD_SOURCES("ext/lexbor/lexbor/dom/interfaces", "attr.c cdata_section.c character_data.c comment.c document.c document_fragment.c document_type.c element.c node.c processing_instruction.c shadow_root.c text.c", "lexbor"); + ADD_SOURCES("ext/lexbor/lexbor/html/tokenizer", "error.c state_comment.c state_doctype.c state_rawtext.c state_rcdata.c state_script.c state.c", "lexbor"); + ADD_SOURCES("ext/lexbor/lexbor/html/tree", "active_formatting.c open_elements.c error.c","lexbor"); + ADD_SOURCES("ext/lexbor/lexbor/html/tree/insertion_mode", "after_after_body.c after_after_frameset.c after_body.c after_frameset.c after_head.c before_head.c before_html.c foreign_content.c in_body.c in_caption.c in_cell.c in_column_group.c in_frameset.c in_head.c in_head_noscript.c initial.c in_row.c in_select.c in_select_in_table.c in_table_body.c in_table.c in_table_text.c in_template.c text.c","lexbor"); + ADD_SOURCES("ext/lexbor/lexbor/html", "encoding.c interface.c parser.c token.c token_attr.c tokenizer.c tree.c","lexbor"); + ADD_SOURCES("ext/lexbor/lexbor/encoding", "big5.c decode.c encode.c encoding.c euc_kr.c gb18030.c iso_2022_jp_katakana.c jis0208.c jis0212.c range.c res.c single.c","lexbor"); + ADD_SOURCES("ext/lexbor/lexbor/html/interfaces", "anchor_element.c area_element.c audio_element.c base_element.c body_element.c br_element.c button_element.c canvas_element.c data_element.c data_list_element.c details_element.c dialog_element.c directory_element.c div_element.c d_list_element.c document.c element.c embed_element.c field_set_element.c font_element.c form_element.c frame_element.c frame_set_element.c head_element.c heading_element.c hr_element.c html_element.c iframe_element.c image_element.c input_element.c label_element.c legend_element.c li_element.c link_element.c map_element.c marquee_element.c media_element.c menu_element.c meta_element.c meter_element.c mod_element.c object_element.c o_list_element.c opt_group_element.c option_element.c output_element.c paragraph_element.c param_element.c picture_element.c pre_element.c progress_element.c quote_element.c script_element.c select_element.c slot_element.c source_element.c span_element.c style_element.c table_caption_element.c table_cell_element.c table_col_element.c table_element.c table_row_element.c table_section_element.c template_element.c text_area_element.c time_element.c title_element.c track_element.c u_list_element.c unknown_element.c video_element.c window.c","lexbor"); + ADD_SOURCES("ext/lexbor/lexbor/css", "state.c log.c parser.c css.c","lexbor"); + ADD_SOURCES("ext/lexbor/lexbor/css/selectors", "state.c selectors.c selector.c pseudo_state.c pseudo.c","lexbor"); + ADD_SOURCES("ext/lexbor/lexbor/css/syntax", "state.c parser.c syntax.c anb.c tokenizer.c token.c","lexbor"); + ADD_SOURCES("ext/lexbor/lexbor/css/syntax/tokenizer", "error.c","lexbor"); + ADD_SOURCES("ext/lexbor/lexbor/ns", "ns.c","lexbor"); + ADD_SOURCES("ext/lexbor/lexbor/tag", "tag.c","lexbor"); + ADD_FLAG("CFLAGS_LEXBOR", "/D LEXBOR_STATIC"); + + AC_DEFINE("HAVE_LEXBOR", 1, "Define to 1 if the PHP extension 'lexbor' is available."); + + PHP_INSTALL_HEADERS("ext/lexbor", "php_lexbor.h"); +} diff --git a/ext/dom/lexbor/lexbor/core/array.c b/ext/lexbor/lexbor/core/array.c similarity index 100% rename from ext/dom/lexbor/lexbor/core/array.c rename to ext/lexbor/lexbor/core/array.c diff --git a/ext/dom/lexbor/lexbor/core/array.h b/ext/lexbor/lexbor/core/array.h similarity index 100% rename from ext/dom/lexbor/lexbor/core/array.h rename to ext/lexbor/lexbor/core/array.h diff --git a/ext/dom/lexbor/lexbor/core/array_obj.c b/ext/lexbor/lexbor/core/array_obj.c similarity index 100% rename from ext/dom/lexbor/lexbor/core/array_obj.c rename to ext/lexbor/lexbor/core/array_obj.c diff --git a/ext/dom/lexbor/lexbor/core/array_obj.h b/ext/lexbor/lexbor/core/array_obj.h similarity index 100% rename from ext/dom/lexbor/lexbor/core/array_obj.h rename to ext/lexbor/lexbor/core/array_obj.h diff --git a/ext/dom/lexbor/lexbor/core/avl.c b/ext/lexbor/lexbor/core/avl.c similarity index 100% rename from ext/dom/lexbor/lexbor/core/avl.c rename to ext/lexbor/lexbor/core/avl.c diff --git a/ext/dom/lexbor/lexbor/core/avl.h b/ext/lexbor/lexbor/core/avl.h similarity index 100% rename from ext/dom/lexbor/lexbor/core/avl.h rename to ext/lexbor/lexbor/core/avl.h diff --git a/ext/dom/lexbor/lexbor/core/base.h b/ext/lexbor/lexbor/core/base.h similarity index 100% rename from ext/dom/lexbor/lexbor/core/base.h rename to ext/lexbor/lexbor/core/base.h diff --git a/ext/dom/lexbor/lexbor/core/bst.c b/ext/lexbor/lexbor/core/bst.c similarity index 100% rename from ext/dom/lexbor/lexbor/core/bst.c rename to ext/lexbor/lexbor/core/bst.c diff --git a/ext/dom/lexbor/lexbor/core/bst.h b/ext/lexbor/lexbor/core/bst.h similarity index 100% rename from ext/dom/lexbor/lexbor/core/bst.h rename to ext/lexbor/lexbor/core/bst.h diff --git a/ext/dom/lexbor/lexbor/core/bst_map.c b/ext/lexbor/lexbor/core/bst_map.c similarity index 100% rename from ext/dom/lexbor/lexbor/core/bst_map.c rename to ext/lexbor/lexbor/core/bst_map.c diff --git a/ext/dom/lexbor/lexbor/core/bst_map.h b/ext/lexbor/lexbor/core/bst_map.h similarity index 100% rename from ext/dom/lexbor/lexbor/core/bst_map.h rename to ext/lexbor/lexbor/core/bst_map.h diff --git a/ext/dom/lexbor/lexbor/core/conv.c b/ext/lexbor/lexbor/core/conv.c similarity index 100% rename from ext/dom/lexbor/lexbor/core/conv.c rename to ext/lexbor/lexbor/core/conv.c diff --git a/ext/dom/lexbor/lexbor/core/conv.h b/ext/lexbor/lexbor/core/conv.h similarity index 100% rename from ext/dom/lexbor/lexbor/core/conv.h rename to ext/lexbor/lexbor/core/conv.h diff --git a/ext/dom/lexbor/lexbor/core/core.h b/ext/lexbor/lexbor/core/core.h similarity index 100% rename from ext/dom/lexbor/lexbor/core/core.h rename to ext/lexbor/lexbor/core/core.h diff --git a/ext/dom/lexbor/lexbor/core/def.h b/ext/lexbor/lexbor/core/def.h similarity index 100% rename from ext/dom/lexbor/lexbor/core/def.h rename to ext/lexbor/lexbor/core/def.h diff --git a/ext/dom/lexbor/lexbor/core/diyfp.c b/ext/lexbor/lexbor/core/diyfp.c similarity index 100% rename from ext/dom/lexbor/lexbor/core/diyfp.c rename to ext/lexbor/lexbor/core/diyfp.c diff --git a/ext/dom/lexbor/lexbor/core/diyfp.h b/ext/lexbor/lexbor/core/diyfp.h similarity index 100% rename from ext/dom/lexbor/lexbor/core/diyfp.h rename to ext/lexbor/lexbor/core/diyfp.h diff --git a/ext/dom/lexbor/lexbor/core/dobject.c b/ext/lexbor/lexbor/core/dobject.c similarity index 100% rename from ext/dom/lexbor/lexbor/core/dobject.c rename to ext/lexbor/lexbor/core/dobject.c diff --git a/ext/dom/lexbor/lexbor/core/dobject.h b/ext/lexbor/lexbor/core/dobject.h similarity index 100% rename from ext/dom/lexbor/lexbor/core/dobject.h rename to ext/lexbor/lexbor/core/dobject.h diff --git a/ext/dom/lexbor/lexbor/core/dtoa.c b/ext/lexbor/lexbor/core/dtoa.c similarity index 100% rename from ext/dom/lexbor/lexbor/core/dtoa.c rename to ext/lexbor/lexbor/core/dtoa.c diff --git a/ext/dom/lexbor/lexbor/core/dtoa.h b/ext/lexbor/lexbor/core/dtoa.h similarity index 100% rename from ext/dom/lexbor/lexbor/core/dtoa.h rename to ext/lexbor/lexbor/core/dtoa.h diff --git a/ext/dom/lexbor/lexbor/core/fs.h b/ext/lexbor/lexbor/core/fs.h similarity index 100% rename from ext/dom/lexbor/lexbor/core/fs.h rename to ext/lexbor/lexbor/core/fs.h diff --git a/ext/dom/lexbor/lexbor/core/hash.c b/ext/lexbor/lexbor/core/hash.c similarity index 100% rename from ext/dom/lexbor/lexbor/core/hash.c rename to ext/lexbor/lexbor/core/hash.c diff --git a/ext/dom/lexbor/lexbor/core/hash.h b/ext/lexbor/lexbor/core/hash.h similarity index 100% rename from ext/dom/lexbor/lexbor/core/hash.h rename to ext/lexbor/lexbor/core/hash.h diff --git a/ext/dom/lexbor/lexbor/core/in.c b/ext/lexbor/lexbor/core/in.c similarity index 100% rename from ext/dom/lexbor/lexbor/core/in.c rename to ext/lexbor/lexbor/core/in.c diff --git a/ext/dom/lexbor/lexbor/core/in.h b/ext/lexbor/lexbor/core/in.h similarity index 100% rename from ext/dom/lexbor/lexbor/core/in.h rename to ext/lexbor/lexbor/core/in.h diff --git a/ext/dom/lexbor/lexbor/core/lexbor.h b/ext/lexbor/lexbor/core/lexbor.h similarity index 100% rename from ext/dom/lexbor/lexbor/core/lexbor.h rename to ext/lexbor/lexbor/core/lexbor.h diff --git a/ext/dom/lexbor/lexbor/core/mem.c b/ext/lexbor/lexbor/core/mem.c similarity index 100% rename from ext/dom/lexbor/lexbor/core/mem.c rename to ext/lexbor/lexbor/core/mem.c diff --git a/ext/dom/lexbor/lexbor/core/mem.h b/ext/lexbor/lexbor/core/mem.h similarity index 100% rename from ext/dom/lexbor/lexbor/core/mem.h rename to ext/lexbor/lexbor/core/mem.h diff --git a/ext/dom/lexbor/lexbor/core/mraw.c b/ext/lexbor/lexbor/core/mraw.c similarity index 100% rename from ext/dom/lexbor/lexbor/core/mraw.c rename to ext/lexbor/lexbor/core/mraw.c diff --git a/ext/dom/lexbor/lexbor/core/mraw.h b/ext/lexbor/lexbor/core/mraw.h similarity index 100% rename from ext/dom/lexbor/lexbor/core/mraw.h rename to ext/lexbor/lexbor/core/mraw.h diff --git a/ext/dom/lexbor/lexbor/core/perf.h b/ext/lexbor/lexbor/core/perf.h similarity index 100% rename from ext/dom/lexbor/lexbor/core/perf.h rename to ext/lexbor/lexbor/core/perf.h diff --git a/ext/dom/lexbor/lexbor/core/plog.c b/ext/lexbor/lexbor/core/plog.c similarity index 100% rename from ext/dom/lexbor/lexbor/core/plog.c rename to ext/lexbor/lexbor/core/plog.c diff --git a/ext/dom/lexbor/lexbor/core/plog.h b/ext/lexbor/lexbor/core/plog.h similarity index 100% rename from ext/dom/lexbor/lexbor/core/plog.h rename to ext/lexbor/lexbor/core/plog.h diff --git a/ext/dom/lexbor/lexbor/core/print.c b/ext/lexbor/lexbor/core/print.c similarity index 100% rename from ext/dom/lexbor/lexbor/core/print.c rename to ext/lexbor/lexbor/core/print.c diff --git a/ext/dom/lexbor/lexbor/core/print.h b/ext/lexbor/lexbor/core/print.h similarity index 100% rename from ext/dom/lexbor/lexbor/core/print.h rename to ext/lexbor/lexbor/core/print.h diff --git a/ext/dom/lexbor/lexbor/core/sbst.h b/ext/lexbor/lexbor/core/sbst.h similarity index 100% rename from ext/dom/lexbor/lexbor/core/sbst.h rename to ext/lexbor/lexbor/core/sbst.h diff --git a/ext/dom/lexbor/lexbor/core/serialize.c b/ext/lexbor/lexbor/core/serialize.c similarity index 100% rename from ext/dom/lexbor/lexbor/core/serialize.c rename to ext/lexbor/lexbor/core/serialize.c diff --git a/ext/dom/lexbor/lexbor/core/serialize.h b/ext/lexbor/lexbor/core/serialize.h similarity index 100% rename from ext/dom/lexbor/lexbor/core/serialize.h rename to ext/lexbor/lexbor/core/serialize.h diff --git a/ext/dom/lexbor/lexbor/core/shs.c b/ext/lexbor/lexbor/core/shs.c similarity index 100% rename from ext/dom/lexbor/lexbor/core/shs.c rename to ext/lexbor/lexbor/core/shs.c diff --git a/ext/dom/lexbor/lexbor/core/shs.h b/ext/lexbor/lexbor/core/shs.h similarity index 100% rename from ext/dom/lexbor/lexbor/core/shs.h rename to ext/lexbor/lexbor/core/shs.h diff --git a/ext/dom/lexbor/lexbor/core/str.c b/ext/lexbor/lexbor/core/str.c similarity index 100% rename from ext/dom/lexbor/lexbor/core/str.c rename to ext/lexbor/lexbor/core/str.c diff --git a/ext/dom/lexbor/lexbor/core/str.h b/ext/lexbor/lexbor/core/str.h similarity index 100% rename from ext/dom/lexbor/lexbor/core/str.h rename to ext/lexbor/lexbor/core/str.h diff --git a/ext/dom/lexbor/lexbor/core/str_res.h b/ext/lexbor/lexbor/core/str_res.h similarity index 100% rename from ext/dom/lexbor/lexbor/core/str_res.h rename to ext/lexbor/lexbor/core/str_res.h diff --git a/ext/dom/lexbor/lexbor/core/strtod.c b/ext/lexbor/lexbor/core/strtod.c similarity index 100% rename from ext/dom/lexbor/lexbor/core/strtod.c rename to ext/lexbor/lexbor/core/strtod.c diff --git a/ext/dom/lexbor/lexbor/core/strtod.h b/ext/lexbor/lexbor/core/strtod.h similarity index 100% rename from ext/dom/lexbor/lexbor/core/strtod.h rename to ext/lexbor/lexbor/core/strtod.h diff --git a/ext/dom/lexbor/lexbor/core/swar.h b/ext/lexbor/lexbor/core/swar.h similarity index 100% rename from ext/dom/lexbor/lexbor/core/swar.h rename to ext/lexbor/lexbor/core/swar.h diff --git a/ext/dom/lexbor/lexbor/core/types.h b/ext/lexbor/lexbor/core/types.h similarity index 100% rename from ext/dom/lexbor/lexbor/core/types.h rename to ext/lexbor/lexbor/core/types.h diff --git a/ext/dom/lexbor/lexbor/core/utils.c b/ext/lexbor/lexbor/core/utils.c similarity index 100% rename from ext/dom/lexbor/lexbor/core/utils.c rename to ext/lexbor/lexbor/core/utils.c diff --git a/ext/dom/lexbor/lexbor/core/utils.h b/ext/lexbor/lexbor/core/utils.h similarity index 100% rename from ext/dom/lexbor/lexbor/core/utils.h rename to ext/lexbor/lexbor/core/utils.h diff --git a/ext/dom/lexbor/lexbor/css/at_rule.h b/ext/lexbor/lexbor/css/at_rule.h similarity index 100% rename from ext/dom/lexbor/lexbor/css/at_rule.h rename to ext/lexbor/lexbor/css/at_rule.h diff --git a/ext/dom/lexbor/lexbor/css/at_rule/const.h b/ext/lexbor/lexbor/css/at_rule/const.h similarity index 100% rename from ext/dom/lexbor/lexbor/css/at_rule/const.h rename to ext/lexbor/lexbor/css/at_rule/const.h diff --git a/ext/dom/lexbor/lexbor/css/at_rule/res.h b/ext/lexbor/lexbor/css/at_rule/res.h similarity index 100% rename from ext/dom/lexbor/lexbor/css/at_rule/res.h rename to ext/lexbor/lexbor/css/at_rule/res.h diff --git a/ext/dom/lexbor/lexbor/css/at_rule/state.h b/ext/lexbor/lexbor/css/at_rule/state.h similarity index 100% rename from ext/dom/lexbor/lexbor/css/at_rule/state.h rename to ext/lexbor/lexbor/css/at_rule/state.h diff --git a/ext/dom/lexbor/lexbor/css/base.h b/ext/lexbor/lexbor/css/base.h similarity index 100% rename from ext/dom/lexbor/lexbor/css/base.h rename to ext/lexbor/lexbor/css/base.h diff --git a/ext/dom/lexbor/lexbor/css/css.c b/ext/lexbor/lexbor/css/css.c similarity index 100% rename from ext/dom/lexbor/lexbor/css/css.c rename to ext/lexbor/lexbor/css/css.c diff --git a/ext/dom/lexbor/lexbor/css/css.h b/ext/lexbor/lexbor/css/css.h similarity index 100% rename from ext/dom/lexbor/lexbor/css/css.h rename to ext/lexbor/lexbor/css/css.h diff --git a/ext/dom/lexbor/lexbor/css/declaration.h b/ext/lexbor/lexbor/css/declaration.h similarity index 100% rename from ext/dom/lexbor/lexbor/css/declaration.h rename to ext/lexbor/lexbor/css/declaration.h diff --git a/ext/dom/lexbor/lexbor/css/log.c b/ext/lexbor/lexbor/css/log.c similarity index 100% rename from ext/dom/lexbor/lexbor/css/log.c rename to ext/lexbor/lexbor/css/log.c diff --git a/ext/dom/lexbor/lexbor/css/log.h b/ext/lexbor/lexbor/css/log.h similarity index 100% rename from ext/dom/lexbor/lexbor/css/log.h rename to ext/lexbor/lexbor/css/log.h diff --git a/ext/dom/lexbor/lexbor/css/parser.c b/ext/lexbor/lexbor/css/parser.c similarity index 100% rename from ext/dom/lexbor/lexbor/css/parser.c rename to ext/lexbor/lexbor/css/parser.c diff --git a/ext/dom/lexbor/lexbor/css/parser.h b/ext/lexbor/lexbor/css/parser.h similarity index 100% rename from ext/dom/lexbor/lexbor/css/parser.h rename to ext/lexbor/lexbor/css/parser.h diff --git a/ext/dom/lexbor/lexbor/css/property.h b/ext/lexbor/lexbor/css/property.h similarity index 100% rename from ext/dom/lexbor/lexbor/css/property.h rename to ext/lexbor/lexbor/css/property.h diff --git a/ext/dom/lexbor/lexbor/css/property/const.h b/ext/lexbor/lexbor/css/property/const.h similarity index 100% rename from ext/dom/lexbor/lexbor/css/property/const.h rename to ext/lexbor/lexbor/css/property/const.h diff --git a/ext/dom/lexbor/lexbor/css/property/res.h b/ext/lexbor/lexbor/css/property/res.h similarity index 100% rename from ext/dom/lexbor/lexbor/css/property/res.h rename to ext/lexbor/lexbor/css/property/res.h diff --git a/ext/dom/lexbor/lexbor/css/property/state.h b/ext/lexbor/lexbor/css/property/state.h similarity index 100% rename from ext/dom/lexbor/lexbor/css/property/state.h rename to ext/lexbor/lexbor/css/property/state.h diff --git a/ext/dom/lexbor/lexbor/css/rule.h b/ext/lexbor/lexbor/css/rule.h similarity index 100% rename from ext/dom/lexbor/lexbor/css/rule.h rename to ext/lexbor/lexbor/css/rule.h diff --git a/ext/dom/lexbor/lexbor/css/selectors/base.h b/ext/lexbor/lexbor/css/selectors/base.h similarity index 100% rename from ext/dom/lexbor/lexbor/css/selectors/base.h rename to ext/lexbor/lexbor/css/selectors/base.h diff --git a/ext/dom/lexbor/lexbor/css/selectors/pseudo.c b/ext/lexbor/lexbor/css/selectors/pseudo.c similarity index 100% rename from ext/dom/lexbor/lexbor/css/selectors/pseudo.c rename to ext/lexbor/lexbor/css/selectors/pseudo.c diff --git a/ext/dom/lexbor/lexbor/css/selectors/pseudo.h b/ext/lexbor/lexbor/css/selectors/pseudo.h similarity index 100% rename from ext/dom/lexbor/lexbor/css/selectors/pseudo.h rename to ext/lexbor/lexbor/css/selectors/pseudo.h diff --git a/ext/dom/lexbor/lexbor/css/selectors/pseudo_const.h b/ext/lexbor/lexbor/css/selectors/pseudo_const.h similarity index 100% rename from ext/dom/lexbor/lexbor/css/selectors/pseudo_const.h rename to ext/lexbor/lexbor/css/selectors/pseudo_const.h diff --git a/ext/dom/lexbor/lexbor/css/selectors/pseudo_res.h b/ext/lexbor/lexbor/css/selectors/pseudo_res.h similarity index 100% rename from ext/dom/lexbor/lexbor/css/selectors/pseudo_res.h rename to ext/lexbor/lexbor/css/selectors/pseudo_res.h diff --git a/ext/dom/lexbor/lexbor/css/selectors/pseudo_state.c b/ext/lexbor/lexbor/css/selectors/pseudo_state.c similarity index 100% rename from ext/dom/lexbor/lexbor/css/selectors/pseudo_state.c rename to ext/lexbor/lexbor/css/selectors/pseudo_state.c diff --git a/ext/dom/lexbor/lexbor/css/selectors/pseudo_state.h b/ext/lexbor/lexbor/css/selectors/pseudo_state.h similarity index 100% rename from ext/dom/lexbor/lexbor/css/selectors/pseudo_state.h rename to ext/lexbor/lexbor/css/selectors/pseudo_state.h diff --git a/ext/dom/lexbor/lexbor/css/selectors/selector.c b/ext/lexbor/lexbor/css/selectors/selector.c similarity index 100% rename from ext/dom/lexbor/lexbor/css/selectors/selector.c rename to ext/lexbor/lexbor/css/selectors/selector.c diff --git a/ext/dom/lexbor/lexbor/css/selectors/selector.h b/ext/lexbor/lexbor/css/selectors/selector.h similarity index 100% rename from ext/dom/lexbor/lexbor/css/selectors/selector.h rename to ext/lexbor/lexbor/css/selectors/selector.h diff --git a/ext/dom/lexbor/lexbor/css/selectors/selectors.c b/ext/lexbor/lexbor/css/selectors/selectors.c similarity index 100% rename from ext/dom/lexbor/lexbor/css/selectors/selectors.c rename to ext/lexbor/lexbor/css/selectors/selectors.c diff --git a/ext/dom/lexbor/lexbor/css/selectors/selectors.h b/ext/lexbor/lexbor/css/selectors/selectors.h similarity index 100% rename from ext/dom/lexbor/lexbor/css/selectors/selectors.h rename to ext/lexbor/lexbor/css/selectors/selectors.h diff --git a/ext/dom/lexbor/lexbor/css/selectors/state.c b/ext/lexbor/lexbor/css/selectors/state.c similarity index 100% rename from ext/dom/lexbor/lexbor/css/selectors/state.c rename to ext/lexbor/lexbor/css/selectors/state.c diff --git a/ext/dom/lexbor/lexbor/css/selectors/state.h b/ext/lexbor/lexbor/css/selectors/state.h similarity index 100% rename from ext/dom/lexbor/lexbor/css/selectors/state.h rename to ext/lexbor/lexbor/css/selectors/state.h diff --git a/ext/dom/lexbor/lexbor/css/state.c b/ext/lexbor/lexbor/css/state.c similarity index 100% rename from ext/dom/lexbor/lexbor/css/state.c rename to ext/lexbor/lexbor/css/state.c diff --git a/ext/dom/lexbor/lexbor/css/state.h b/ext/lexbor/lexbor/css/state.h similarity index 100% rename from ext/dom/lexbor/lexbor/css/state.h rename to ext/lexbor/lexbor/css/state.h diff --git a/ext/dom/lexbor/lexbor/css/stylesheet.h b/ext/lexbor/lexbor/css/stylesheet.h similarity index 100% rename from ext/dom/lexbor/lexbor/css/stylesheet.h rename to ext/lexbor/lexbor/css/stylesheet.h diff --git a/ext/dom/lexbor/lexbor/css/syntax/anb.c b/ext/lexbor/lexbor/css/syntax/anb.c similarity index 100% rename from ext/dom/lexbor/lexbor/css/syntax/anb.c rename to ext/lexbor/lexbor/css/syntax/anb.c diff --git a/ext/dom/lexbor/lexbor/css/syntax/anb.h b/ext/lexbor/lexbor/css/syntax/anb.h similarity index 100% rename from ext/dom/lexbor/lexbor/css/syntax/anb.h rename to ext/lexbor/lexbor/css/syntax/anb.h diff --git a/ext/dom/lexbor/lexbor/css/syntax/base.h b/ext/lexbor/lexbor/css/syntax/base.h similarity index 100% rename from ext/dom/lexbor/lexbor/css/syntax/base.h rename to ext/lexbor/lexbor/css/syntax/base.h diff --git a/ext/dom/lexbor/lexbor/css/syntax/parser.c b/ext/lexbor/lexbor/css/syntax/parser.c similarity index 100% rename from ext/dom/lexbor/lexbor/css/syntax/parser.c rename to ext/lexbor/lexbor/css/syntax/parser.c diff --git a/ext/dom/lexbor/lexbor/css/syntax/parser.h b/ext/lexbor/lexbor/css/syntax/parser.h similarity index 100% rename from ext/dom/lexbor/lexbor/css/syntax/parser.h rename to ext/lexbor/lexbor/css/syntax/parser.h diff --git a/ext/dom/lexbor/lexbor/css/syntax/res.h b/ext/lexbor/lexbor/css/syntax/res.h similarity index 100% rename from ext/dom/lexbor/lexbor/css/syntax/res.h rename to ext/lexbor/lexbor/css/syntax/res.h diff --git a/ext/dom/lexbor/lexbor/css/syntax/state.c b/ext/lexbor/lexbor/css/syntax/state.c similarity index 100% rename from ext/dom/lexbor/lexbor/css/syntax/state.c rename to ext/lexbor/lexbor/css/syntax/state.c diff --git a/ext/dom/lexbor/lexbor/css/syntax/state.h b/ext/lexbor/lexbor/css/syntax/state.h similarity index 100% rename from ext/dom/lexbor/lexbor/css/syntax/state.h rename to ext/lexbor/lexbor/css/syntax/state.h diff --git a/ext/dom/lexbor/lexbor/css/syntax/state_res.h b/ext/lexbor/lexbor/css/syntax/state_res.h similarity index 100% rename from ext/dom/lexbor/lexbor/css/syntax/state_res.h rename to ext/lexbor/lexbor/css/syntax/state_res.h diff --git a/ext/dom/lexbor/lexbor/css/syntax/syntax.c b/ext/lexbor/lexbor/css/syntax/syntax.c similarity index 100% rename from ext/dom/lexbor/lexbor/css/syntax/syntax.c rename to ext/lexbor/lexbor/css/syntax/syntax.c diff --git a/ext/dom/lexbor/lexbor/css/syntax/syntax.h b/ext/lexbor/lexbor/css/syntax/syntax.h similarity index 100% rename from ext/dom/lexbor/lexbor/css/syntax/syntax.h rename to ext/lexbor/lexbor/css/syntax/syntax.h diff --git a/ext/dom/lexbor/lexbor/css/syntax/token.c b/ext/lexbor/lexbor/css/syntax/token.c similarity index 100% rename from ext/dom/lexbor/lexbor/css/syntax/token.c rename to ext/lexbor/lexbor/css/syntax/token.c diff --git a/ext/dom/lexbor/lexbor/css/syntax/token.h b/ext/lexbor/lexbor/css/syntax/token.h similarity index 100% rename from ext/dom/lexbor/lexbor/css/syntax/token.h rename to ext/lexbor/lexbor/css/syntax/token.h diff --git a/ext/dom/lexbor/lexbor/css/syntax/token_res.h b/ext/lexbor/lexbor/css/syntax/token_res.h similarity index 100% rename from ext/dom/lexbor/lexbor/css/syntax/token_res.h rename to ext/lexbor/lexbor/css/syntax/token_res.h diff --git a/ext/dom/lexbor/lexbor/css/syntax/tokenizer.c b/ext/lexbor/lexbor/css/syntax/tokenizer.c similarity index 100% rename from ext/dom/lexbor/lexbor/css/syntax/tokenizer.c rename to ext/lexbor/lexbor/css/syntax/tokenizer.c diff --git a/ext/dom/lexbor/lexbor/css/syntax/tokenizer.h b/ext/lexbor/lexbor/css/syntax/tokenizer.h similarity index 100% rename from ext/dom/lexbor/lexbor/css/syntax/tokenizer.h rename to ext/lexbor/lexbor/css/syntax/tokenizer.h diff --git a/ext/dom/lexbor/lexbor/css/syntax/tokenizer/error.c b/ext/lexbor/lexbor/css/syntax/tokenizer/error.c similarity index 100% rename from ext/dom/lexbor/lexbor/css/syntax/tokenizer/error.c rename to ext/lexbor/lexbor/css/syntax/tokenizer/error.c diff --git a/ext/dom/lexbor/lexbor/css/syntax/tokenizer/error.h b/ext/lexbor/lexbor/css/syntax/tokenizer/error.h similarity index 100% rename from ext/dom/lexbor/lexbor/css/syntax/tokenizer/error.h rename to ext/lexbor/lexbor/css/syntax/tokenizer/error.h diff --git a/ext/dom/lexbor/lexbor/css/unit.h b/ext/lexbor/lexbor/css/unit.h similarity index 100% rename from ext/dom/lexbor/lexbor/css/unit.h rename to ext/lexbor/lexbor/css/unit.h diff --git a/ext/dom/lexbor/lexbor/css/unit/const.h b/ext/lexbor/lexbor/css/unit/const.h similarity index 100% rename from ext/dom/lexbor/lexbor/css/unit/const.h rename to ext/lexbor/lexbor/css/unit/const.h diff --git a/ext/dom/lexbor/lexbor/css/unit/res.h b/ext/lexbor/lexbor/css/unit/res.h similarity index 100% rename from ext/dom/lexbor/lexbor/css/unit/res.h rename to ext/lexbor/lexbor/css/unit/res.h diff --git a/ext/dom/lexbor/lexbor/css/value.h b/ext/lexbor/lexbor/css/value.h similarity index 100% rename from ext/dom/lexbor/lexbor/css/value.h rename to ext/lexbor/lexbor/css/value.h diff --git a/ext/dom/lexbor/lexbor/css/value/const.h b/ext/lexbor/lexbor/css/value/const.h similarity index 100% rename from ext/dom/lexbor/lexbor/css/value/const.h rename to ext/lexbor/lexbor/css/value/const.h diff --git a/ext/dom/lexbor/lexbor/css/value/res.h b/ext/lexbor/lexbor/css/value/res.h similarity index 100% rename from ext/dom/lexbor/lexbor/css/value/res.h rename to ext/lexbor/lexbor/css/value/res.h diff --git a/ext/dom/lexbor/lexbor/dom/base.h b/ext/lexbor/lexbor/dom/base.h similarity index 100% rename from ext/dom/lexbor/lexbor/dom/base.h rename to ext/lexbor/lexbor/dom/base.h diff --git a/ext/dom/lexbor/lexbor/dom/collection.c b/ext/lexbor/lexbor/dom/collection.c similarity index 100% rename from ext/dom/lexbor/lexbor/dom/collection.c rename to ext/lexbor/lexbor/dom/collection.c diff --git a/ext/dom/lexbor/lexbor/dom/collection.h b/ext/lexbor/lexbor/dom/collection.h similarity index 100% rename from ext/dom/lexbor/lexbor/dom/collection.h rename to ext/lexbor/lexbor/dom/collection.h diff --git a/ext/dom/lexbor/lexbor/dom/dom.h b/ext/lexbor/lexbor/dom/dom.h similarity index 100% rename from ext/dom/lexbor/lexbor/dom/dom.h rename to ext/lexbor/lexbor/dom/dom.h diff --git a/ext/dom/lexbor/lexbor/dom/exception.c b/ext/lexbor/lexbor/dom/exception.c similarity index 100% rename from ext/dom/lexbor/lexbor/dom/exception.c rename to ext/lexbor/lexbor/dom/exception.c diff --git a/ext/dom/lexbor/lexbor/dom/exception.h b/ext/lexbor/lexbor/dom/exception.h similarity index 100% rename from ext/dom/lexbor/lexbor/dom/exception.h rename to ext/lexbor/lexbor/dom/exception.h diff --git a/ext/dom/lexbor/lexbor/dom/interface.c b/ext/lexbor/lexbor/dom/interface.c similarity index 100% rename from ext/dom/lexbor/lexbor/dom/interface.c rename to ext/lexbor/lexbor/dom/interface.c diff --git a/ext/dom/lexbor/lexbor/dom/interface.h b/ext/lexbor/lexbor/dom/interface.h similarity index 100% rename from ext/dom/lexbor/lexbor/dom/interface.h rename to ext/lexbor/lexbor/dom/interface.h diff --git a/ext/dom/lexbor/lexbor/dom/interfaces/attr.c b/ext/lexbor/lexbor/dom/interfaces/attr.c similarity index 100% rename from ext/dom/lexbor/lexbor/dom/interfaces/attr.c rename to ext/lexbor/lexbor/dom/interfaces/attr.c diff --git a/ext/dom/lexbor/lexbor/dom/interfaces/attr.h b/ext/lexbor/lexbor/dom/interfaces/attr.h similarity index 100% rename from ext/dom/lexbor/lexbor/dom/interfaces/attr.h rename to ext/lexbor/lexbor/dom/interfaces/attr.h diff --git a/ext/dom/lexbor/lexbor/dom/interfaces/attr_const.h b/ext/lexbor/lexbor/dom/interfaces/attr_const.h similarity index 100% rename from ext/dom/lexbor/lexbor/dom/interfaces/attr_const.h rename to ext/lexbor/lexbor/dom/interfaces/attr_const.h diff --git a/ext/dom/lexbor/lexbor/dom/interfaces/attr_res.h b/ext/lexbor/lexbor/dom/interfaces/attr_res.h similarity index 100% rename from ext/dom/lexbor/lexbor/dom/interfaces/attr_res.h rename to ext/lexbor/lexbor/dom/interfaces/attr_res.h diff --git a/ext/dom/lexbor/lexbor/dom/interfaces/cdata_section.c b/ext/lexbor/lexbor/dom/interfaces/cdata_section.c similarity index 100% rename from ext/dom/lexbor/lexbor/dom/interfaces/cdata_section.c rename to ext/lexbor/lexbor/dom/interfaces/cdata_section.c diff --git a/ext/dom/lexbor/lexbor/dom/interfaces/cdata_section.h b/ext/lexbor/lexbor/dom/interfaces/cdata_section.h similarity index 100% rename from ext/dom/lexbor/lexbor/dom/interfaces/cdata_section.h rename to ext/lexbor/lexbor/dom/interfaces/cdata_section.h diff --git a/ext/dom/lexbor/lexbor/dom/interfaces/character_data.c b/ext/lexbor/lexbor/dom/interfaces/character_data.c similarity index 100% rename from ext/dom/lexbor/lexbor/dom/interfaces/character_data.c rename to ext/lexbor/lexbor/dom/interfaces/character_data.c diff --git a/ext/dom/lexbor/lexbor/dom/interfaces/character_data.h b/ext/lexbor/lexbor/dom/interfaces/character_data.h similarity index 100% rename from ext/dom/lexbor/lexbor/dom/interfaces/character_data.h rename to ext/lexbor/lexbor/dom/interfaces/character_data.h diff --git a/ext/dom/lexbor/lexbor/dom/interfaces/comment.c b/ext/lexbor/lexbor/dom/interfaces/comment.c similarity index 100% rename from ext/dom/lexbor/lexbor/dom/interfaces/comment.c rename to ext/lexbor/lexbor/dom/interfaces/comment.c diff --git a/ext/dom/lexbor/lexbor/dom/interfaces/comment.h b/ext/lexbor/lexbor/dom/interfaces/comment.h similarity index 100% rename from ext/dom/lexbor/lexbor/dom/interfaces/comment.h rename to ext/lexbor/lexbor/dom/interfaces/comment.h diff --git a/ext/dom/lexbor/lexbor/dom/interfaces/document.c b/ext/lexbor/lexbor/dom/interfaces/document.c similarity index 100% rename from ext/dom/lexbor/lexbor/dom/interfaces/document.c rename to ext/lexbor/lexbor/dom/interfaces/document.c diff --git a/ext/dom/lexbor/lexbor/dom/interfaces/document.h b/ext/lexbor/lexbor/dom/interfaces/document.h similarity index 100% rename from ext/dom/lexbor/lexbor/dom/interfaces/document.h rename to ext/lexbor/lexbor/dom/interfaces/document.h diff --git a/ext/dom/lexbor/lexbor/dom/interfaces/document_fragment.c b/ext/lexbor/lexbor/dom/interfaces/document_fragment.c similarity index 100% rename from ext/dom/lexbor/lexbor/dom/interfaces/document_fragment.c rename to ext/lexbor/lexbor/dom/interfaces/document_fragment.c diff --git a/ext/dom/lexbor/lexbor/dom/interfaces/document_fragment.h b/ext/lexbor/lexbor/dom/interfaces/document_fragment.h similarity index 100% rename from ext/dom/lexbor/lexbor/dom/interfaces/document_fragment.h rename to ext/lexbor/lexbor/dom/interfaces/document_fragment.h diff --git a/ext/dom/lexbor/lexbor/dom/interfaces/document_type.c b/ext/lexbor/lexbor/dom/interfaces/document_type.c similarity index 100% rename from ext/dom/lexbor/lexbor/dom/interfaces/document_type.c rename to ext/lexbor/lexbor/dom/interfaces/document_type.c diff --git a/ext/dom/lexbor/lexbor/dom/interfaces/document_type.h b/ext/lexbor/lexbor/dom/interfaces/document_type.h similarity index 100% rename from ext/dom/lexbor/lexbor/dom/interfaces/document_type.h rename to ext/lexbor/lexbor/dom/interfaces/document_type.h diff --git a/ext/dom/lexbor/lexbor/dom/interfaces/element.c b/ext/lexbor/lexbor/dom/interfaces/element.c similarity index 100% rename from ext/dom/lexbor/lexbor/dom/interfaces/element.c rename to ext/lexbor/lexbor/dom/interfaces/element.c diff --git a/ext/dom/lexbor/lexbor/dom/interfaces/element.h b/ext/lexbor/lexbor/dom/interfaces/element.h similarity index 100% rename from ext/dom/lexbor/lexbor/dom/interfaces/element.h rename to ext/lexbor/lexbor/dom/interfaces/element.h diff --git a/ext/dom/lexbor/lexbor/dom/interfaces/event_target.c b/ext/lexbor/lexbor/dom/interfaces/event_target.c similarity index 100% rename from ext/dom/lexbor/lexbor/dom/interfaces/event_target.c rename to ext/lexbor/lexbor/dom/interfaces/event_target.c diff --git a/ext/dom/lexbor/lexbor/dom/interfaces/event_target.h b/ext/lexbor/lexbor/dom/interfaces/event_target.h similarity index 100% rename from ext/dom/lexbor/lexbor/dom/interfaces/event_target.h rename to ext/lexbor/lexbor/dom/interfaces/event_target.h diff --git a/ext/dom/lexbor/lexbor/dom/interfaces/node.c b/ext/lexbor/lexbor/dom/interfaces/node.c similarity index 100% rename from ext/dom/lexbor/lexbor/dom/interfaces/node.c rename to ext/lexbor/lexbor/dom/interfaces/node.c diff --git a/ext/dom/lexbor/lexbor/dom/interfaces/node.h b/ext/lexbor/lexbor/dom/interfaces/node.h similarity index 100% rename from ext/dom/lexbor/lexbor/dom/interfaces/node.h rename to ext/lexbor/lexbor/dom/interfaces/node.h diff --git a/ext/dom/lexbor/lexbor/dom/interfaces/processing_instruction.c b/ext/lexbor/lexbor/dom/interfaces/processing_instruction.c similarity index 100% rename from ext/dom/lexbor/lexbor/dom/interfaces/processing_instruction.c rename to ext/lexbor/lexbor/dom/interfaces/processing_instruction.c diff --git a/ext/dom/lexbor/lexbor/dom/interfaces/processing_instruction.h b/ext/lexbor/lexbor/dom/interfaces/processing_instruction.h similarity index 100% rename from ext/dom/lexbor/lexbor/dom/interfaces/processing_instruction.h rename to ext/lexbor/lexbor/dom/interfaces/processing_instruction.h diff --git a/ext/dom/lexbor/lexbor/dom/interfaces/shadow_root.c b/ext/lexbor/lexbor/dom/interfaces/shadow_root.c similarity index 100% rename from ext/dom/lexbor/lexbor/dom/interfaces/shadow_root.c rename to ext/lexbor/lexbor/dom/interfaces/shadow_root.c diff --git a/ext/dom/lexbor/lexbor/dom/interfaces/shadow_root.h b/ext/lexbor/lexbor/dom/interfaces/shadow_root.h similarity index 100% rename from ext/dom/lexbor/lexbor/dom/interfaces/shadow_root.h rename to ext/lexbor/lexbor/dom/interfaces/shadow_root.h diff --git a/ext/dom/lexbor/lexbor/dom/interfaces/text.c b/ext/lexbor/lexbor/dom/interfaces/text.c similarity index 100% rename from ext/dom/lexbor/lexbor/dom/interfaces/text.c rename to ext/lexbor/lexbor/dom/interfaces/text.c diff --git a/ext/dom/lexbor/lexbor/dom/interfaces/text.h b/ext/lexbor/lexbor/dom/interfaces/text.h similarity index 100% rename from ext/dom/lexbor/lexbor/dom/interfaces/text.h rename to ext/lexbor/lexbor/dom/interfaces/text.h diff --git a/ext/dom/lexbor/lexbor/encoding/base.h b/ext/lexbor/lexbor/encoding/base.h similarity index 100% rename from ext/dom/lexbor/lexbor/encoding/base.h rename to ext/lexbor/lexbor/encoding/base.h diff --git a/ext/dom/lexbor/lexbor/encoding/big5.c b/ext/lexbor/lexbor/encoding/big5.c similarity index 100% rename from ext/dom/lexbor/lexbor/encoding/big5.c rename to ext/lexbor/lexbor/encoding/big5.c diff --git a/ext/dom/lexbor/lexbor/encoding/const.h b/ext/lexbor/lexbor/encoding/const.h similarity index 100% rename from ext/dom/lexbor/lexbor/encoding/const.h rename to ext/lexbor/lexbor/encoding/const.h diff --git a/ext/dom/lexbor/lexbor/encoding/decode.c b/ext/lexbor/lexbor/encoding/decode.c similarity index 100% rename from ext/dom/lexbor/lexbor/encoding/decode.c rename to ext/lexbor/lexbor/encoding/decode.c diff --git a/ext/dom/lexbor/lexbor/encoding/decode.h b/ext/lexbor/lexbor/encoding/decode.h similarity index 100% rename from ext/dom/lexbor/lexbor/encoding/decode.h rename to ext/lexbor/lexbor/encoding/decode.h diff --git a/ext/dom/lexbor/lexbor/encoding/encode.c b/ext/lexbor/lexbor/encoding/encode.c similarity index 100% rename from ext/dom/lexbor/lexbor/encoding/encode.c rename to ext/lexbor/lexbor/encoding/encode.c diff --git a/ext/dom/lexbor/lexbor/encoding/encode.h b/ext/lexbor/lexbor/encoding/encode.h similarity index 100% rename from ext/dom/lexbor/lexbor/encoding/encode.h rename to ext/lexbor/lexbor/encoding/encode.h diff --git a/ext/dom/lexbor/lexbor/encoding/encoding.c b/ext/lexbor/lexbor/encoding/encoding.c similarity index 100% rename from ext/dom/lexbor/lexbor/encoding/encoding.c rename to ext/lexbor/lexbor/encoding/encoding.c diff --git a/ext/dom/lexbor/lexbor/encoding/encoding.h b/ext/lexbor/lexbor/encoding/encoding.h similarity index 100% rename from ext/dom/lexbor/lexbor/encoding/encoding.h rename to ext/lexbor/lexbor/encoding/encoding.h diff --git a/ext/dom/lexbor/lexbor/encoding/euc_kr.c b/ext/lexbor/lexbor/encoding/euc_kr.c similarity index 100% rename from ext/dom/lexbor/lexbor/encoding/euc_kr.c rename to ext/lexbor/lexbor/encoding/euc_kr.c diff --git a/ext/dom/lexbor/lexbor/encoding/gb18030.c b/ext/lexbor/lexbor/encoding/gb18030.c similarity index 100% rename from ext/dom/lexbor/lexbor/encoding/gb18030.c rename to ext/lexbor/lexbor/encoding/gb18030.c diff --git a/ext/dom/lexbor/lexbor/encoding/iso_2022_jp_katakana.c b/ext/lexbor/lexbor/encoding/iso_2022_jp_katakana.c similarity index 100% rename from ext/dom/lexbor/lexbor/encoding/iso_2022_jp_katakana.c rename to ext/lexbor/lexbor/encoding/iso_2022_jp_katakana.c diff --git a/ext/dom/lexbor/lexbor/encoding/jis0208.c b/ext/lexbor/lexbor/encoding/jis0208.c similarity index 100% rename from ext/dom/lexbor/lexbor/encoding/jis0208.c rename to ext/lexbor/lexbor/encoding/jis0208.c diff --git a/ext/dom/lexbor/lexbor/encoding/jis0212.c b/ext/lexbor/lexbor/encoding/jis0212.c similarity index 100% rename from ext/dom/lexbor/lexbor/encoding/jis0212.c rename to ext/lexbor/lexbor/encoding/jis0212.c diff --git a/ext/dom/lexbor/lexbor/encoding/multi.h b/ext/lexbor/lexbor/encoding/multi.h similarity index 100% rename from ext/dom/lexbor/lexbor/encoding/multi.h rename to ext/lexbor/lexbor/encoding/multi.h diff --git a/ext/dom/lexbor/lexbor/encoding/range.c b/ext/lexbor/lexbor/encoding/range.c similarity index 100% rename from ext/dom/lexbor/lexbor/encoding/range.c rename to ext/lexbor/lexbor/encoding/range.c diff --git a/ext/dom/lexbor/lexbor/encoding/range.h b/ext/lexbor/lexbor/encoding/range.h similarity index 100% rename from ext/dom/lexbor/lexbor/encoding/range.h rename to ext/lexbor/lexbor/encoding/range.h diff --git a/ext/dom/lexbor/lexbor/encoding/res.c b/ext/lexbor/lexbor/encoding/res.c similarity index 100% rename from ext/dom/lexbor/lexbor/encoding/res.c rename to ext/lexbor/lexbor/encoding/res.c diff --git a/ext/dom/lexbor/lexbor/encoding/res.h b/ext/lexbor/lexbor/encoding/res.h similarity index 100% rename from ext/dom/lexbor/lexbor/encoding/res.h rename to ext/lexbor/lexbor/encoding/res.h diff --git a/ext/dom/lexbor/lexbor/encoding/single.c b/ext/lexbor/lexbor/encoding/single.c similarity index 100% rename from ext/dom/lexbor/lexbor/encoding/single.c rename to ext/lexbor/lexbor/encoding/single.c diff --git a/ext/dom/lexbor/lexbor/encoding/single.h b/ext/lexbor/lexbor/encoding/single.h similarity index 100% rename from ext/dom/lexbor/lexbor/encoding/single.h rename to ext/lexbor/lexbor/encoding/single.h diff --git a/ext/dom/lexbor/lexbor/html/base.h b/ext/lexbor/lexbor/html/base.h similarity index 100% rename from ext/dom/lexbor/lexbor/html/base.h rename to ext/lexbor/lexbor/html/base.h diff --git a/ext/dom/lexbor/lexbor/html/encoding.c b/ext/lexbor/lexbor/html/encoding.c similarity index 100% rename from ext/dom/lexbor/lexbor/html/encoding.c rename to ext/lexbor/lexbor/html/encoding.c diff --git a/ext/dom/lexbor/lexbor/html/encoding.h b/ext/lexbor/lexbor/html/encoding.h similarity index 100% rename from ext/dom/lexbor/lexbor/html/encoding.h rename to ext/lexbor/lexbor/html/encoding.h diff --git a/ext/dom/lexbor/lexbor/html/html.h b/ext/lexbor/lexbor/html/html.h similarity index 100% rename from ext/dom/lexbor/lexbor/html/html.h rename to ext/lexbor/lexbor/html/html.h diff --git a/ext/dom/lexbor/lexbor/html/interface.c b/ext/lexbor/lexbor/html/interface.c similarity index 100% rename from ext/dom/lexbor/lexbor/html/interface.c rename to ext/lexbor/lexbor/html/interface.c diff --git a/ext/dom/lexbor/lexbor/html/interface.h b/ext/lexbor/lexbor/html/interface.h similarity index 100% rename from ext/dom/lexbor/lexbor/html/interface.h rename to ext/lexbor/lexbor/html/interface.h diff --git a/ext/dom/lexbor/lexbor/html/interface_res.h b/ext/lexbor/lexbor/html/interface_res.h similarity index 100% rename from ext/dom/lexbor/lexbor/html/interface_res.h rename to ext/lexbor/lexbor/html/interface_res.h diff --git a/ext/dom/lexbor/lexbor/html/interfaces/anchor_element.c b/ext/lexbor/lexbor/html/interfaces/anchor_element.c similarity index 100% rename from ext/dom/lexbor/lexbor/html/interfaces/anchor_element.c rename to ext/lexbor/lexbor/html/interfaces/anchor_element.c diff --git a/ext/dom/lexbor/lexbor/html/interfaces/anchor_element.h b/ext/lexbor/lexbor/html/interfaces/anchor_element.h similarity index 100% rename from ext/dom/lexbor/lexbor/html/interfaces/anchor_element.h rename to ext/lexbor/lexbor/html/interfaces/anchor_element.h diff --git a/ext/dom/lexbor/lexbor/html/interfaces/area_element.c b/ext/lexbor/lexbor/html/interfaces/area_element.c similarity index 100% rename from ext/dom/lexbor/lexbor/html/interfaces/area_element.c rename to ext/lexbor/lexbor/html/interfaces/area_element.c diff --git a/ext/dom/lexbor/lexbor/html/interfaces/area_element.h b/ext/lexbor/lexbor/html/interfaces/area_element.h similarity index 100% rename from ext/dom/lexbor/lexbor/html/interfaces/area_element.h rename to ext/lexbor/lexbor/html/interfaces/area_element.h diff --git a/ext/dom/lexbor/lexbor/html/interfaces/audio_element.c b/ext/lexbor/lexbor/html/interfaces/audio_element.c similarity index 100% rename from ext/dom/lexbor/lexbor/html/interfaces/audio_element.c rename to ext/lexbor/lexbor/html/interfaces/audio_element.c diff --git a/ext/dom/lexbor/lexbor/html/interfaces/audio_element.h b/ext/lexbor/lexbor/html/interfaces/audio_element.h similarity index 100% rename from ext/dom/lexbor/lexbor/html/interfaces/audio_element.h rename to ext/lexbor/lexbor/html/interfaces/audio_element.h diff --git a/ext/dom/lexbor/lexbor/html/interfaces/base_element.c b/ext/lexbor/lexbor/html/interfaces/base_element.c similarity index 100% rename from ext/dom/lexbor/lexbor/html/interfaces/base_element.c rename to ext/lexbor/lexbor/html/interfaces/base_element.c diff --git a/ext/dom/lexbor/lexbor/html/interfaces/base_element.h b/ext/lexbor/lexbor/html/interfaces/base_element.h similarity index 100% rename from ext/dom/lexbor/lexbor/html/interfaces/base_element.h rename to ext/lexbor/lexbor/html/interfaces/base_element.h diff --git a/ext/dom/lexbor/lexbor/html/interfaces/body_element.c b/ext/lexbor/lexbor/html/interfaces/body_element.c similarity index 100% rename from ext/dom/lexbor/lexbor/html/interfaces/body_element.c rename to ext/lexbor/lexbor/html/interfaces/body_element.c diff --git a/ext/dom/lexbor/lexbor/html/interfaces/body_element.h b/ext/lexbor/lexbor/html/interfaces/body_element.h similarity index 100% rename from ext/dom/lexbor/lexbor/html/interfaces/body_element.h rename to ext/lexbor/lexbor/html/interfaces/body_element.h diff --git a/ext/dom/lexbor/lexbor/html/interfaces/br_element.c b/ext/lexbor/lexbor/html/interfaces/br_element.c similarity index 100% rename from ext/dom/lexbor/lexbor/html/interfaces/br_element.c rename to ext/lexbor/lexbor/html/interfaces/br_element.c diff --git a/ext/dom/lexbor/lexbor/html/interfaces/br_element.h b/ext/lexbor/lexbor/html/interfaces/br_element.h similarity index 100% rename from ext/dom/lexbor/lexbor/html/interfaces/br_element.h rename to ext/lexbor/lexbor/html/interfaces/br_element.h diff --git a/ext/dom/lexbor/lexbor/html/interfaces/button_element.c b/ext/lexbor/lexbor/html/interfaces/button_element.c similarity index 100% rename from ext/dom/lexbor/lexbor/html/interfaces/button_element.c rename to ext/lexbor/lexbor/html/interfaces/button_element.c diff --git a/ext/dom/lexbor/lexbor/html/interfaces/button_element.h b/ext/lexbor/lexbor/html/interfaces/button_element.h similarity index 100% rename from ext/dom/lexbor/lexbor/html/interfaces/button_element.h rename to ext/lexbor/lexbor/html/interfaces/button_element.h diff --git a/ext/dom/lexbor/lexbor/html/interfaces/canvas_element.c b/ext/lexbor/lexbor/html/interfaces/canvas_element.c similarity index 100% rename from ext/dom/lexbor/lexbor/html/interfaces/canvas_element.c rename to ext/lexbor/lexbor/html/interfaces/canvas_element.c diff --git a/ext/dom/lexbor/lexbor/html/interfaces/canvas_element.h b/ext/lexbor/lexbor/html/interfaces/canvas_element.h similarity index 100% rename from ext/dom/lexbor/lexbor/html/interfaces/canvas_element.h rename to ext/lexbor/lexbor/html/interfaces/canvas_element.h diff --git a/ext/dom/lexbor/lexbor/html/interfaces/d_list_element.c b/ext/lexbor/lexbor/html/interfaces/d_list_element.c similarity index 100% rename from ext/dom/lexbor/lexbor/html/interfaces/d_list_element.c rename to ext/lexbor/lexbor/html/interfaces/d_list_element.c diff --git a/ext/dom/lexbor/lexbor/html/interfaces/d_list_element.h b/ext/lexbor/lexbor/html/interfaces/d_list_element.h similarity index 100% rename from ext/dom/lexbor/lexbor/html/interfaces/d_list_element.h rename to ext/lexbor/lexbor/html/interfaces/d_list_element.h diff --git a/ext/dom/lexbor/lexbor/html/interfaces/data_element.c b/ext/lexbor/lexbor/html/interfaces/data_element.c similarity index 100% rename from ext/dom/lexbor/lexbor/html/interfaces/data_element.c rename to ext/lexbor/lexbor/html/interfaces/data_element.c diff --git a/ext/dom/lexbor/lexbor/html/interfaces/data_element.h b/ext/lexbor/lexbor/html/interfaces/data_element.h similarity index 100% rename from ext/dom/lexbor/lexbor/html/interfaces/data_element.h rename to ext/lexbor/lexbor/html/interfaces/data_element.h diff --git a/ext/dom/lexbor/lexbor/html/interfaces/data_list_element.c b/ext/lexbor/lexbor/html/interfaces/data_list_element.c similarity index 100% rename from ext/dom/lexbor/lexbor/html/interfaces/data_list_element.c rename to ext/lexbor/lexbor/html/interfaces/data_list_element.c diff --git a/ext/dom/lexbor/lexbor/html/interfaces/data_list_element.h b/ext/lexbor/lexbor/html/interfaces/data_list_element.h similarity index 100% rename from ext/dom/lexbor/lexbor/html/interfaces/data_list_element.h rename to ext/lexbor/lexbor/html/interfaces/data_list_element.h diff --git a/ext/dom/lexbor/lexbor/html/interfaces/details_element.c b/ext/lexbor/lexbor/html/interfaces/details_element.c similarity index 100% rename from ext/dom/lexbor/lexbor/html/interfaces/details_element.c rename to ext/lexbor/lexbor/html/interfaces/details_element.c diff --git a/ext/dom/lexbor/lexbor/html/interfaces/details_element.h b/ext/lexbor/lexbor/html/interfaces/details_element.h similarity index 100% rename from ext/dom/lexbor/lexbor/html/interfaces/details_element.h rename to ext/lexbor/lexbor/html/interfaces/details_element.h diff --git a/ext/dom/lexbor/lexbor/html/interfaces/dialog_element.c b/ext/lexbor/lexbor/html/interfaces/dialog_element.c similarity index 100% rename from ext/dom/lexbor/lexbor/html/interfaces/dialog_element.c rename to ext/lexbor/lexbor/html/interfaces/dialog_element.c diff --git a/ext/dom/lexbor/lexbor/html/interfaces/dialog_element.h b/ext/lexbor/lexbor/html/interfaces/dialog_element.h similarity index 100% rename from ext/dom/lexbor/lexbor/html/interfaces/dialog_element.h rename to ext/lexbor/lexbor/html/interfaces/dialog_element.h diff --git a/ext/dom/lexbor/lexbor/html/interfaces/directory_element.c b/ext/lexbor/lexbor/html/interfaces/directory_element.c similarity index 100% rename from ext/dom/lexbor/lexbor/html/interfaces/directory_element.c rename to ext/lexbor/lexbor/html/interfaces/directory_element.c diff --git a/ext/dom/lexbor/lexbor/html/interfaces/directory_element.h b/ext/lexbor/lexbor/html/interfaces/directory_element.h similarity index 100% rename from ext/dom/lexbor/lexbor/html/interfaces/directory_element.h rename to ext/lexbor/lexbor/html/interfaces/directory_element.h diff --git a/ext/dom/lexbor/lexbor/html/interfaces/div_element.c b/ext/lexbor/lexbor/html/interfaces/div_element.c similarity index 100% rename from ext/dom/lexbor/lexbor/html/interfaces/div_element.c rename to ext/lexbor/lexbor/html/interfaces/div_element.c diff --git a/ext/dom/lexbor/lexbor/html/interfaces/div_element.h b/ext/lexbor/lexbor/html/interfaces/div_element.h similarity index 100% rename from ext/dom/lexbor/lexbor/html/interfaces/div_element.h rename to ext/lexbor/lexbor/html/interfaces/div_element.h diff --git a/ext/dom/lexbor/lexbor/html/interfaces/document.c b/ext/lexbor/lexbor/html/interfaces/document.c similarity index 100% rename from ext/dom/lexbor/lexbor/html/interfaces/document.c rename to ext/lexbor/lexbor/html/interfaces/document.c diff --git a/ext/dom/lexbor/lexbor/html/interfaces/document.h b/ext/lexbor/lexbor/html/interfaces/document.h similarity index 100% rename from ext/dom/lexbor/lexbor/html/interfaces/document.h rename to ext/lexbor/lexbor/html/interfaces/document.h diff --git a/ext/dom/lexbor/lexbor/html/interfaces/element.c b/ext/lexbor/lexbor/html/interfaces/element.c similarity index 100% rename from ext/dom/lexbor/lexbor/html/interfaces/element.c rename to ext/lexbor/lexbor/html/interfaces/element.c diff --git a/ext/dom/lexbor/lexbor/html/interfaces/element.h b/ext/lexbor/lexbor/html/interfaces/element.h similarity index 100% rename from ext/dom/lexbor/lexbor/html/interfaces/element.h rename to ext/lexbor/lexbor/html/interfaces/element.h diff --git a/ext/dom/lexbor/lexbor/html/interfaces/embed_element.c b/ext/lexbor/lexbor/html/interfaces/embed_element.c similarity index 100% rename from ext/dom/lexbor/lexbor/html/interfaces/embed_element.c rename to ext/lexbor/lexbor/html/interfaces/embed_element.c diff --git a/ext/dom/lexbor/lexbor/html/interfaces/embed_element.h b/ext/lexbor/lexbor/html/interfaces/embed_element.h similarity index 100% rename from ext/dom/lexbor/lexbor/html/interfaces/embed_element.h rename to ext/lexbor/lexbor/html/interfaces/embed_element.h diff --git a/ext/dom/lexbor/lexbor/html/interfaces/field_set_element.c b/ext/lexbor/lexbor/html/interfaces/field_set_element.c similarity index 100% rename from ext/dom/lexbor/lexbor/html/interfaces/field_set_element.c rename to ext/lexbor/lexbor/html/interfaces/field_set_element.c diff --git a/ext/dom/lexbor/lexbor/html/interfaces/field_set_element.h b/ext/lexbor/lexbor/html/interfaces/field_set_element.h similarity index 100% rename from ext/dom/lexbor/lexbor/html/interfaces/field_set_element.h rename to ext/lexbor/lexbor/html/interfaces/field_set_element.h diff --git a/ext/dom/lexbor/lexbor/html/interfaces/font_element.c b/ext/lexbor/lexbor/html/interfaces/font_element.c similarity index 100% rename from ext/dom/lexbor/lexbor/html/interfaces/font_element.c rename to ext/lexbor/lexbor/html/interfaces/font_element.c diff --git a/ext/dom/lexbor/lexbor/html/interfaces/font_element.h b/ext/lexbor/lexbor/html/interfaces/font_element.h similarity index 100% rename from ext/dom/lexbor/lexbor/html/interfaces/font_element.h rename to ext/lexbor/lexbor/html/interfaces/font_element.h diff --git a/ext/dom/lexbor/lexbor/html/interfaces/form_element.c b/ext/lexbor/lexbor/html/interfaces/form_element.c similarity index 100% rename from ext/dom/lexbor/lexbor/html/interfaces/form_element.c rename to ext/lexbor/lexbor/html/interfaces/form_element.c diff --git a/ext/dom/lexbor/lexbor/html/interfaces/form_element.h b/ext/lexbor/lexbor/html/interfaces/form_element.h similarity index 100% rename from ext/dom/lexbor/lexbor/html/interfaces/form_element.h rename to ext/lexbor/lexbor/html/interfaces/form_element.h diff --git a/ext/dom/lexbor/lexbor/html/interfaces/frame_element.c b/ext/lexbor/lexbor/html/interfaces/frame_element.c similarity index 100% rename from ext/dom/lexbor/lexbor/html/interfaces/frame_element.c rename to ext/lexbor/lexbor/html/interfaces/frame_element.c diff --git a/ext/dom/lexbor/lexbor/html/interfaces/frame_element.h b/ext/lexbor/lexbor/html/interfaces/frame_element.h similarity index 100% rename from ext/dom/lexbor/lexbor/html/interfaces/frame_element.h rename to ext/lexbor/lexbor/html/interfaces/frame_element.h diff --git a/ext/dom/lexbor/lexbor/html/interfaces/frame_set_element.c b/ext/lexbor/lexbor/html/interfaces/frame_set_element.c similarity index 100% rename from ext/dom/lexbor/lexbor/html/interfaces/frame_set_element.c rename to ext/lexbor/lexbor/html/interfaces/frame_set_element.c diff --git a/ext/dom/lexbor/lexbor/html/interfaces/frame_set_element.h b/ext/lexbor/lexbor/html/interfaces/frame_set_element.h similarity index 100% rename from ext/dom/lexbor/lexbor/html/interfaces/frame_set_element.h rename to ext/lexbor/lexbor/html/interfaces/frame_set_element.h diff --git a/ext/dom/lexbor/lexbor/html/interfaces/head_element.c b/ext/lexbor/lexbor/html/interfaces/head_element.c similarity index 100% rename from ext/dom/lexbor/lexbor/html/interfaces/head_element.c rename to ext/lexbor/lexbor/html/interfaces/head_element.c diff --git a/ext/dom/lexbor/lexbor/html/interfaces/head_element.h b/ext/lexbor/lexbor/html/interfaces/head_element.h similarity index 100% rename from ext/dom/lexbor/lexbor/html/interfaces/head_element.h rename to ext/lexbor/lexbor/html/interfaces/head_element.h diff --git a/ext/dom/lexbor/lexbor/html/interfaces/heading_element.c b/ext/lexbor/lexbor/html/interfaces/heading_element.c similarity index 100% rename from ext/dom/lexbor/lexbor/html/interfaces/heading_element.c rename to ext/lexbor/lexbor/html/interfaces/heading_element.c diff --git a/ext/dom/lexbor/lexbor/html/interfaces/heading_element.h b/ext/lexbor/lexbor/html/interfaces/heading_element.h similarity index 100% rename from ext/dom/lexbor/lexbor/html/interfaces/heading_element.h rename to ext/lexbor/lexbor/html/interfaces/heading_element.h diff --git a/ext/dom/lexbor/lexbor/html/interfaces/hr_element.c b/ext/lexbor/lexbor/html/interfaces/hr_element.c similarity index 100% rename from ext/dom/lexbor/lexbor/html/interfaces/hr_element.c rename to ext/lexbor/lexbor/html/interfaces/hr_element.c diff --git a/ext/dom/lexbor/lexbor/html/interfaces/hr_element.h b/ext/lexbor/lexbor/html/interfaces/hr_element.h similarity index 100% rename from ext/dom/lexbor/lexbor/html/interfaces/hr_element.h rename to ext/lexbor/lexbor/html/interfaces/hr_element.h diff --git a/ext/dom/lexbor/lexbor/html/interfaces/html_element.c b/ext/lexbor/lexbor/html/interfaces/html_element.c similarity index 100% rename from ext/dom/lexbor/lexbor/html/interfaces/html_element.c rename to ext/lexbor/lexbor/html/interfaces/html_element.c diff --git a/ext/dom/lexbor/lexbor/html/interfaces/html_element.h b/ext/lexbor/lexbor/html/interfaces/html_element.h similarity index 100% rename from ext/dom/lexbor/lexbor/html/interfaces/html_element.h rename to ext/lexbor/lexbor/html/interfaces/html_element.h diff --git a/ext/dom/lexbor/lexbor/html/interfaces/iframe_element.c b/ext/lexbor/lexbor/html/interfaces/iframe_element.c similarity index 100% rename from ext/dom/lexbor/lexbor/html/interfaces/iframe_element.c rename to ext/lexbor/lexbor/html/interfaces/iframe_element.c diff --git a/ext/dom/lexbor/lexbor/html/interfaces/iframe_element.h b/ext/lexbor/lexbor/html/interfaces/iframe_element.h similarity index 100% rename from ext/dom/lexbor/lexbor/html/interfaces/iframe_element.h rename to ext/lexbor/lexbor/html/interfaces/iframe_element.h diff --git a/ext/dom/lexbor/lexbor/html/interfaces/image_element.c b/ext/lexbor/lexbor/html/interfaces/image_element.c similarity index 100% rename from ext/dom/lexbor/lexbor/html/interfaces/image_element.c rename to ext/lexbor/lexbor/html/interfaces/image_element.c diff --git a/ext/dom/lexbor/lexbor/html/interfaces/image_element.h b/ext/lexbor/lexbor/html/interfaces/image_element.h similarity index 100% rename from ext/dom/lexbor/lexbor/html/interfaces/image_element.h rename to ext/lexbor/lexbor/html/interfaces/image_element.h diff --git a/ext/dom/lexbor/lexbor/html/interfaces/input_element.c b/ext/lexbor/lexbor/html/interfaces/input_element.c similarity index 100% rename from ext/dom/lexbor/lexbor/html/interfaces/input_element.c rename to ext/lexbor/lexbor/html/interfaces/input_element.c diff --git a/ext/dom/lexbor/lexbor/html/interfaces/input_element.h b/ext/lexbor/lexbor/html/interfaces/input_element.h similarity index 100% rename from ext/dom/lexbor/lexbor/html/interfaces/input_element.h rename to ext/lexbor/lexbor/html/interfaces/input_element.h diff --git a/ext/dom/lexbor/lexbor/html/interfaces/label_element.c b/ext/lexbor/lexbor/html/interfaces/label_element.c similarity index 100% rename from ext/dom/lexbor/lexbor/html/interfaces/label_element.c rename to ext/lexbor/lexbor/html/interfaces/label_element.c diff --git a/ext/dom/lexbor/lexbor/html/interfaces/label_element.h b/ext/lexbor/lexbor/html/interfaces/label_element.h similarity index 100% rename from ext/dom/lexbor/lexbor/html/interfaces/label_element.h rename to ext/lexbor/lexbor/html/interfaces/label_element.h diff --git a/ext/dom/lexbor/lexbor/html/interfaces/legend_element.c b/ext/lexbor/lexbor/html/interfaces/legend_element.c similarity index 100% rename from ext/dom/lexbor/lexbor/html/interfaces/legend_element.c rename to ext/lexbor/lexbor/html/interfaces/legend_element.c diff --git a/ext/dom/lexbor/lexbor/html/interfaces/legend_element.h b/ext/lexbor/lexbor/html/interfaces/legend_element.h similarity index 100% rename from ext/dom/lexbor/lexbor/html/interfaces/legend_element.h rename to ext/lexbor/lexbor/html/interfaces/legend_element.h diff --git a/ext/dom/lexbor/lexbor/html/interfaces/li_element.c b/ext/lexbor/lexbor/html/interfaces/li_element.c similarity index 100% rename from ext/dom/lexbor/lexbor/html/interfaces/li_element.c rename to ext/lexbor/lexbor/html/interfaces/li_element.c diff --git a/ext/dom/lexbor/lexbor/html/interfaces/li_element.h b/ext/lexbor/lexbor/html/interfaces/li_element.h similarity index 100% rename from ext/dom/lexbor/lexbor/html/interfaces/li_element.h rename to ext/lexbor/lexbor/html/interfaces/li_element.h diff --git a/ext/dom/lexbor/lexbor/html/interfaces/link_element.c b/ext/lexbor/lexbor/html/interfaces/link_element.c similarity index 100% rename from ext/dom/lexbor/lexbor/html/interfaces/link_element.c rename to ext/lexbor/lexbor/html/interfaces/link_element.c diff --git a/ext/dom/lexbor/lexbor/html/interfaces/link_element.h b/ext/lexbor/lexbor/html/interfaces/link_element.h similarity index 100% rename from ext/dom/lexbor/lexbor/html/interfaces/link_element.h rename to ext/lexbor/lexbor/html/interfaces/link_element.h diff --git a/ext/dom/lexbor/lexbor/html/interfaces/map_element.c b/ext/lexbor/lexbor/html/interfaces/map_element.c similarity index 100% rename from ext/dom/lexbor/lexbor/html/interfaces/map_element.c rename to ext/lexbor/lexbor/html/interfaces/map_element.c diff --git a/ext/dom/lexbor/lexbor/html/interfaces/map_element.h b/ext/lexbor/lexbor/html/interfaces/map_element.h similarity index 100% rename from ext/dom/lexbor/lexbor/html/interfaces/map_element.h rename to ext/lexbor/lexbor/html/interfaces/map_element.h diff --git a/ext/dom/lexbor/lexbor/html/interfaces/marquee_element.c b/ext/lexbor/lexbor/html/interfaces/marquee_element.c similarity index 100% rename from ext/dom/lexbor/lexbor/html/interfaces/marquee_element.c rename to ext/lexbor/lexbor/html/interfaces/marquee_element.c diff --git a/ext/dom/lexbor/lexbor/html/interfaces/marquee_element.h b/ext/lexbor/lexbor/html/interfaces/marquee_element.h similarity index 100% rename from ext/dom/lexbor/lexbor/html/interfaces/marquee_element.h rename to ext/lexbor/lexbor/html/interfaces/marquee_element.h diff --git a/ext/dom/lexbor/lexbor/html/interfaces/media_element.c b/ext/lexbor/lexbor/html/interfaces/media_element.c similarity index 100% rename from ext/dom/lexbor/lexbor/html/interfaces/media_element.c rename to ext/lexbor/lexbor/html/interfaces/media_element.c diff --git a/ext/dom/lexbor/lexbor/html/interfaces/media_element.h b/ext/lexbor/lexbor/html/interfaces/media_element.h similarity index 100% rename from ext/dom/lexbor/lexbor/html/interfaces/media_element.h rename to ext/lexbor/lexbor/html/interfaces/media_element.h diff --git a/ext/dom/lexbor/lexbor/html/interfaces/menu_element.c b/ext/lexbor/lexbor/html/interfaces/menu_element.c similarity index 100% rename from ext/dom/lexbor/lexbor/html/interfaces/menu_element.c rename to ext/lexbor/lexbor/html/interfaces/menu_element.c diff --git a/ext/dom/lexbor/lexbor/html/interfaces/menu_element.h b/ext/lexbor/lexbor/html/interfaces/menu_element.h similarity index 100% rename from ext/dom/lexbor/lexbor/html/interfaces/menu_element.h rename to ext/lexbor/lexbor/html/interfaces/menu_element.h diff --git a/ext/dom/lexbor/lexbor/html/interfaces/meta_element.c b/ext/lexbor/lexbor/html/interfaces/meta_element.c similarity index 100% rename from ext/dom/lexbor/lexbor/html/interfaces/meta_element.c rename to ext/lexbor/lexbor/html/interfaces/meta_element.c diff --git a/ext/dom/lexbor/lexbor/html/interfaces/meta_element.h b/ext/lexbor/lexbor/html/interfaces/meta_element.h similarity index 100% rename from ext/dom/lexbor/lexbor/html/interfaces/meta_element.h rename to ext/lexbor/lexbor/html/interfaces/meta_element.h diff --git a/ext/dom/lexbor/lexbor/html/interfaces/meter_element.c b/ext/lexbor/lexbor/html/interfaces/meter_element.c similarity index 100% rename from ext/dom/lexbor/lexbor/html/interfaces/meter_element.c rename to ext/lexbor/lexbor/html/interfaces/meter_element.c diff --git a/ext/dom/lexbor/lexbor/html/interfaces/meter_element.h b/ext/lexbor/lexbor/html/interfaces/meter_element.h similarity index 100% rename from ext/dom/lexbor/lexbor/html/interfaces/meter_element.h rename to ext/lexbor/lexbor/html/interfaces/meter_element.h diff --git a/ext/dom/lexbor/lexbor/html/interfaces/mod_element.c b/ext/lexbor/lexbor/html/interfaces/mod_element.c similarity index 100% rename from ext/dom/lexbor/lexbor/html/interfaces/mod_element.c rename to ext/lexbor/lexbor/html/interfaces/mod_element.c diff --git a/ext/dom/lexbor/lexbor/html/interfaces/mod_element.h b/ext/lexbor/lexbor/html/interfaces/mod_element.h similarity index 100% rename from ext/dom/lexbor/lexbor/html/interfaces/mod_element.h rename to ext/lexbor/lexbor/html/interfaces/mod_element.h diff --git a/ext/dom/lexbor/lexbor/html/interfaces/o_list_element.c b/ext/lexbor/lexbor/html/interfaces/o_list_element.c similarity index 100% rename from ext/dom/lexbor/lexbor/html/interfaces/o_list_element.c rename to ext/lexbor/lexbor/html/interfaces/o_list_element.c diff --git a/ext/dom/lexbor/lexbor/html/interfaces/o_list_element.h b/ext/lexbor/lexbor/html/interfaces/o_list_element.h similarity index 100% rename from ext/dom/lexbor/lexbor/html/interfaces/o_list_element.h rename to ext/lexbor/lexbor/html/interfaces/o_list_element.h diff --git a/ext/dom/lexbor/lexbor/html/interfaces/object_element.c b/ext/lexbor/lexbor/html/interfaces/object_element.c similarity index 100% rename from ext/dom/lexbor/lexbor/html/interfaces/object_element.c rename to ext/lexbor/lexbor/html/interfaces/object_element.c diff --git a/ext/dom/lexbor/lexbor/html/interfaces/object_element.h b/ext/lexbor/lexbor/html/interfaces/object_element.h similarity index 100% rename from ext/dom/lexbor/lexbor/html/interfaces/object_element.h rename to ext/lexbor/lexbor/html/interfaces/object_element.h diff --git a/ext/dom/lexbor/lexbor/html/interfaces/opt_group_element.c b/ext/lexbor/lexbor/html/interfaces/opt_group_element.c similarity index 100% rename from ext/dom/lexbor/lexbor/html/interfaces/opt_group_element.c rename to ext/lexbor/lexbor/html/interfaces/opt_group_element.c diff --git a/ext/dom/lexbor/lexbor/html/interfaces/opt_group_element.h b/ext/lexbor/lexbor/html/interfaces/opt_group_element.h similarity index 100% rename from ext/dom/lexbor/lexbor/html/interfaces/opt_group_element.h rename to ext/lexbor/lexbor/html/interfaces/opt_group_element.h diff --git a/ext/dom/lexbor/lexbor/html/interfaces/option_element.c b/ext/lexbor/lexbor/html/interfaces/option_element.c similarity index 100% rename from ext/dom/lexbor/lexbor/html/interfaces/option_element.c rename to ext/lexbor/lexbor/html/interfaces/option_element.c diff --git a/ext/dom/lexbor/lexbor/html/interfaces/option_element.h b/ext/lexbor/lexbor/html/interfaces/option_element.h similarity index 100% rename from ext/dom/lexbor/lexbor/html/interfaces/option_element.h rename to ext/lexbor/lexbor/html/interfaces/option_element.h diff --git a/ext/dom/lexbor/lexbor/html/interfaces/output_element.c b/ext/lexbor/lexbor/html/interfaces/output_element.c similarity index 100% rename from ext/dom/lexbor/lexbor/html/interfaces/output_element.c rename to ext/lexbor/lexbor/html/interfaces/output_element.c diff --git a/ext/dom/lexbor/lexbor/html/interfaces/output_element.h b/ext/lexbor/lexbor/html/interfaces/output_element.h similarity index 100% rename from ext/dom/lexbor/lexbor/html/interfaces/output_element.h rename to ext/lexbor/lexbor/html/interfaces/output_element.h diff --git a/ext/dom/lexbor/lexbor/html/interfaces/paragraph_element.c b/ext/lexbor/lexbor/html/interfaces/paragraph_element.c similarity index 100% rename from ext/dom/lexbor/lexbor/html/interfaces/paragraph_element.c rename to ext/lexbor/lexbor/html/interfaces/paragraph_element.c diff --git a/ext/dom/lexbor/lexbor/html/interfaces/paragraph_element.h b/ext/lexbor/lexbor/html/interfaces/paragraph_element.h similarity index 100% rename from ext/dom/lexbor/lexbor/html/interfaces/paragraph_element.h rename to ext/lexbor/lexbor/html/interfaces/paragraph_element.h diff --git a/ext/dom/lexbor/lexbor/html/interfaces/param_element.c b/ext/lexbor/lexbor/html/interfaces/param_element.c similarity index 100% rename from ext/dom/lexbor/lexbor/html/interfaces/param_element.c rename to ext/lexbor/lexbor/html/interfaces/param_element.c diff --git a/ext/dom/lexbor/lexbor/html/interfaces/param_element.h b/ext/lexbor/lexbor/html/interfaces/param_element.h similarity index 100% rename from ext/dom/lexbor/lexbor/html/interfaces/param_element.h rename to ext/lexbor/lexbor/html/interfaces/param_element.h diff --git a/ext/dom/lexbor/lexbor/html/interfaces/picture_element.c b/ext/lexbor/lexbor/html/interfaces/picture_element.c similarity index 100% rename from ext/dom/lexbor/lexbor/html/interfaces/picture_element.c rename to ext/lexbor/lexbor/html/interfaces/picture_element.c diff --git a/ext/dom/lexbor/lexbor/html/interfaces/picture_element.h b/ext/lexbor/lexbor/html/interfaces/picture_element.h similarity index 100% rename from ext/dom/lexbor/lexbor/html/interfaces/picture_element.h rename to ext/lexbor/lexbor/html/interfaces/picture_element.h diff --git a/ext/dom/lexbor/lexbor/html/interfaces/pre_element.c b/ext/lexbor/lexbor/html/interfaces/pre_element.c similarity index 100% rename from ext/dom/lexbor/lexbor/html/interfaces/pre_element.c rename to ext/lexbor/lexbor/html/interfaces/pre_element.c diff --git a/ext/dom/lexbor/lexbor/html/interfaces/pre_element.h b/ext/lexbor/lexbor/html/interfaces/pre_element.h similarity index 100% rename from ext/dom/lexbor/lexbor/html/interfaces/pre_element.h rename to ext/lexbor/lexbor/html/interfaces/pre_element.h diff --git a/ext/dom/lexbor/lexbor/html/interfaces/progress_element.c b/ext/lexbor/lexbor/html/interfaces/progress_element.c similarity index 100% rename from ext/dom/lexbor/lexbor/html/interfaces/progress_element.c rename to ext/lexbor/lexbor/html/interfaces/progress_element.c diff --git a/ext/dom/lexbor/lexbor/html/interfaces/progress_element.h b/ext/lexbor/lexbor/html/interfaces/progress_element.h similarity index 100% rename from ext/dom/lexbor/lexbor/html/interfaces/progress_element.h rename to ext/lexbor/lexbor/html/interfaces/progress_element.h diff --git a/ext/dom/lexbor/lexbor/html/interfaces/quote_element.c b/ext/lexbor/lexbor/html/interfaces/quote_element.c similarity index 100% rename from ext/dom/lexbor/lexbor/html/interfaces/quote_element.c rename to ext/lexbor/lexbor/html/interfaces/quote_element.c diff --git a/ext/dom/lexbor/lexbor/html/interfaces/quote_element.h b/ext/lexbor/lexbor/html/interfaces/quote_element.h similarity index 100% rename from ext/dom/lexbor/lexbor/html/interfaces/quote_element.h rename to ext/lexbor/lexbor/html/interfaces/quote_element.h diff --git a/ext/dom/lexbor/lexbor/html/interfaces/script_element.c b/ext/lexbor/lexbor/html/interfaces/script_element.c similarity index 100% rename from ext/dom/lexbor/lexbor/html/interfaces/script_element.c rename to ext/lexbor/lexbor/html/interfaces/script_element.c diff --git a/ext/dom/lexbor/lexbor/html/interfaces/script_element.h b/ext/lexbor/lexbor/html/interfaces/script_element.h similarity index 100% rename from ext/dom/lexbor/lexbor/html/interfaces/script_element.h rename to ext/lexbor/lexbor/html/interfaces/script_element.h diff --git a/ext/dom/lexbor/lexbor/html/interfaces/select_element.c b/ext/lexbor/lexbor/html/interfaces/select_element.c similarity index 100% rename from ext/dom/lexbor/lexbor/html/interfaces/select_element.c rename to ext/lexbor/lexbor/html/interfaces/select_element.c diff --git a/ext/dom/lexbor/lexbor/html/interfaces/select_element.h b/ext/lexbor/lexbor/html/interfaces/select_element.h similarity index 100% rename from ext/dom/lexbor/lexbor/html/interfaces/select_element.h rename to ext/lexbor/lexbor/html/interfaces/select_element.h diff --git a/ext/dom/lexbor/lexbor/html/interfaces/slot_element.c b/ext/lexbor/lexbor/html/interfaces/slot_element.c similarity index 100% rename from ext/dom/lexbor/lexbor/html/interfaces/slot_element.c rename to ext/lexbor/lexbor/html/interfaces/slot_element.c diff --git a/ext/dom/lexbor/lexbor/html/interfaces/slot_element.h b/ext/lexbor/lexbor/html/interfaces/slot_element.h similarity index 100% rename from ext/dom/lexbor/lexbor/html/interfaces/slot_element.h rename to ext/lexbor/lexbor/html/interfaces/slot_element.h diff --git a/ext/dom/lexbor/lexbor/html/interfaces/source_element.c b/ext/lexbor/lexbor/html/interfaces/source_element.c similarity index 100% rename from ext/dom/lexbor/lexbor/html/interfaces/source_element.c rename to ext/lexbor/lexbor/html/interfaces/source_element.c diff --git a/ext/dom/lexbor/lexbor/html/interfaces/source_element.h b/ext/lexbor/lexbor/html/interfaces/source_element.h similarity index 100% rename from ext/dom/lexbor/lexbor/html/interfaces/source_element.h rename to ext/lexbor/lexbor/html/interfaces/source_element.h diff --git a/ext/dom/lexbor/lexbor/html/interfaces/span_element.c b/ext/lexbor/lexbor/html/interfaces/span_element.c similarity index 100% rename from ext/dom/lexbor/lexbor/html/interfaces/span_element.c rename to ext/lexbor/lexbor/html/interfaces/span_element.c diff --git a/ext/dom/lexbor/lexbor/html/interfaces/span_element.h b/ext/lexbor/lexbor/html/interfaces/span_element.h similarity index 100% rename from ext/dom/lexbor/lexbor/html/interfaces/span_element.h rename to ext/lexbor/lexbor/html/interfaces/span_element.h diff --git a/ext/dom/lexbor/lexbor/html/interfaces/style_element.c b/ext/lexbor/lexbor/html/interfaces/style_element.c similarity index 100% rename from ext/dom/lexbor/lexbor/html/interfaces/style_element.c rename to ext/lexbor/lexbor/html/interfaces/style_element.c diff --git a/ext/dom/lexbor/lexbor/html/interfaces/style_element.h b/ext/lexbor/lexbor/html/interfaces/style_element.h similarity index 100% rename from ext/dom/lexbor/lexbor/html/interfaces/style_element.h rename to ext/lexbor/lexbor/html/interfaces/style_element.h diff --git a/ext/dom/lexbor/lexbor/html/interfaces/table_caption_element.c b/ext/lexbor/lexbor/html/interfaces/table_caption_element.c similarity index 100% rename from ext/dom/lexbor/lexbor/html/interfaces/table_caption_element.c rename to ext/lexbor/lexbor/html/interfaces/table_caption_element.c diff --git a/ext/dom/lexbor/lexbor/html/interfaces/table_caption_element.h b/ext/lexbor/lexbor/html/interfaces/table_caption_element.h similarity index 100% rename from ext/dom/lexbor/lexbor/html/interfaces/table_caption_element.h rename to ext/lexbor/lexbor/html/interfaces/table_caption_element.h diff --git a/ext/dom/lexbor/lexbor/html/interfaces/table_cell_element.c b/ext/lexbor/lexbor/html/interfaces/table_cell_element.c similarity index 100% rename from ext/dom/lexbor/lexbor/html/interfaces/table_cell_element.c rename to ext/lexbor/lexbor/html/interfaces/table_cell_element.c diff --git a/ext/dom/lexbor/lexbor/html/interfaces/table_cell_element.h b/ext/lexbor/lexbor/html/interfaces/table_cell_element.h similarity index 100% rename from ext/dom/lexbor/lexbor/html/interfaces/table_cell_element.h rename to ext/lexbor/lexbor/html/interfaces/table_cell_element.h diff --git a/ext/dom/lexbor/lexbor/html/interfaces/table_col_element.c b/ext/lexbor/lexbor/html/interfaces/table_col_element.c similarity index 100% rename from ext/dom/lexbor/lexbor/html/interfaces/table_col_element.c rename to ext/lexbor/lexbor/html/interfaces/table_col_element.c diff --git a/ext/dom/lexbor/lexbor/html/interfaces/table_col_element.h b/ext/lexbor/lexbor/html/interfaces/table_col_element.h similarity index 100% rename from ext/dom/lexbor/lexbor/html/interfaces/table_col_element.h rename to ext/lexbor/lexbor/html/interfaces/table_col_element.h diff --git a/ext/dom/lexbor/lexbor/html/interfaces/table_element.c b/ext/lexbor/lexbor/html/interfaces/table_element.c similarity index 100% rename from ext/dom/lexbor/lexbor/html/interfaces/table_element.c rename to ext/lexbor/lexbor/html/interfaces/table_element.c diff --git a/ext/dom/lexbor/lexbor/html/interfaces/table_element.h b/ext/lexbor/lexbor/html/interfaces/table_element.h similarity index 100% rename from ext/dom/lexbor/lexbor/html/interfaces/table_element.h rename to ext/lexbor/lexbor/html/interfaces/table_element.h diff --git a/ext/dom/lexbor/lexbor/html/interfaces/table_row_element.c b/ext/lexbor/lexbor/html/interfaces/table_row_element.c similarity index 100% rename from ext/dom/lexbor/lexbor/html/interfaces/table_row_element.c rename to ext/lexbor/lexbor/html/interfaces/table_row_element.c diff --git a/ext/dom/lexbor/lexbor/html/interfaces/table_row_element.h b/ext/lexbor/lexbor/html/interfaces/table_row_element.h similarity index 100% rename from ext/dom/lexbor/lexbor/html/interfaces/table_row_element.h rename to ext/lexbor/lexbor/html/interfaces/table_row_element.h diff --git a/ext/dom/lexbor/lexbor/html/interfaces/table_section_element.c b/ext/lexbor/lexbor/html/interfaces/table_section_element.c similarity index 100% rename from ext/dom/lexbor/lexbor/html/interfaces/table_section_element.c rename to ext/lexbor/lexbor/html/interfaces/table_section_element.c diff --git a/ext/dom/lexbor/lexbor/html/interfaces/table_section_element.h b/ext/lexbor/lexbor/html/interfaces/table_section_element.h similarity index 100% rename from ext/dom/lexbor/lexbor/html/interfaces/table_section_element.h rename to ext/lexbor/lexbor/html/interfaces/table_section_element.h diff --git a/ext/dom/lexbor/lexbor/html/interfaces/template_element.c b/ext/lexbor/lexbor/html/interfaces/template_element.c similarity index 100% rename from ext/dom/lexbor/lexbor/html/interfaces/template_element.c rename to ext/lexbor/lexbor/html/interfaces/template_element.c diff --git a/ext/dom/lexbor/lexbor/html/interfaces/template_element.h b/ext/lexbor/lexbor/html/interfaces/template_element.h similarity index 100% rename from ext/dom/lexbor/lexbor/html/interfaces/template_element.h rename to ext/lexbor/lexbor/html/interfaces/template_element.h diff --git a/ext/dom/lexbor/lexbor/html/interfaces/text_area_element.c b/ext/lexbor/lexbor/html/interfaces/text_area_element.c similarity index 100% rename from ext/dom/lexbor/lexbor/html/interfaces/text_area_element.c rename to ext/lexbor/lexbor/html/interfaces/text_area_element.c diff --git a/ext/dom/lexbor/lexbor/html/interfaces/text_area_element.h b/ext/lexbor/lexbor/html/interfaces/text_area_element.h similarity index 100% rename from ext/dom/lexbor/lexbor/html/interfaces/text_area_element.h rename to ext/lexbor/lexbor/html/interfaces/text_area_element.h diff --git a/ext/dom/lexbor/lexbor/html/interfaces/time_element.c b/ext/lexbor/lexbor/html/interfaces/time_element.c similarity index 100% rename from ext/dom/lexbor/lexbor/html/interfaces/time_element.c rename to ext/lexbor/lexbor/html/interfaces/time_element.c diff --git a/ext/dom/lexbor/lexbor/html/interfaces/time_element.h b/ext/lexbor/lexbor/html/interfaces/time_element.h similarity index 100% rename from ext/dom/lexbor/lexbor/html/interfaces/time_element.h rename to ext/lexbor/lexbor/html/interfaces/time_element.h diff --git a/ext/dom/lexbor/lexbor/html/interfaces/title_element.c b/ext/lexbor/lexbor/html/interfaces/title_element.c similarity index 100% rename from ext/dom/lexbor/lexbor/html/interfaces/title_element.c rename to ext/lexbor/lexbor/html/interfaces/title_element.c diff --git a/ext/dom/lexbor/lexbor/html/interfaces/title_element.h b/ext/lexbor/lexbor/html/interfaces/title_element.h similarity index 100% rename from ext/dom/lexbor/lexbor/html/interfaces/title_element.h rename to ext/lexbor/lexbor/html/interfaces/title_element.h diff --git a/ext/dom/lexbor/lexbor/html/interfaces/track_element.c b/ext/lexbor/lexbor/html/interfaces/track_element.c similarity index 100% rename from ext/dom/lexbor/lexbor/html/interfaces/track_element.c rename to ext/lexbor/lexbor/html/interfaces/track_element.c diff --git a/ext/dom/lexbor/lexbor/html/interfaces/track_element.h b/ext/lexbor/lexbor/html/interfaces/track_element.h similarity index 100% rename from ext/dom/lexbor/lexbor/html/interfaces/track_element.h rename to ext/lexbor/lexbor/html/interfaces/track_element.h diff --git a/ext/dom/lexbor/lexbor/html/interfaces/u_list_element.c b/ext/lexbor/lexbor/html/interfaces/u_list_element.c similarity index 100% rename from ext/dom/lexbor/lexbor/html/interfaces/u_list_element.c rename to ext/lexbor/lexbor/html/interfaces/u_list_element.c diff --git a/ext/dom/lexbor/lexbor/html/interfaces/u_list_element.h b/ext/lexbor/lexbor/html/interfaces/u_list_element.h similarity index 100% rename from ext/dom/lexbor/lexbor/html/interfaces/u_list_element.h rename to ext/lexbor/lexbor/html/interfaces/u_list_element.h diff --git a/ext/dom/lexbor/lexbor/html/interfaces/unknown_element.c b/ext/lexbor/lexbor/html/interfaces/unknown_element.c similarity index 100% rename from ext/dom/lexbor/lexbor/html/interfaces/unknown_element.c rename to ext/lexbor/lexbor/html/interfaces/unknown_element.c diff --git a/ext/dom/lexbor/lexbor/html/interfaces/unknown_element.h b/ext/lexbor/lexbor/html/interfaces/unknown_element.h similarity index 100% rename from ext/dom/lexbor/lexbor/html/interfaces/unknown_element.h rename to ext/lexbor/lexbor/html/interfaces/unknown_element.h diff --git a/ext/dom/lexbor/lexbor/html/interfaces/video_element.c b/ext/lexbor/lexbor/html/interfaces/video_element.c similarity index 100% rename from ext/dom/lexbor/lexbor/html/interfaces/video_element.c rename to ext/lexbor/lexbor/html/interfaces/video_element.c diff --git a/ext/dom/lexbor/lexbor/html/interfaces/video_element.h b/ext/lexbor/lexbor/html/interfaces/video_element.h similarity index 100% rename from ext/dom/lexbor/lexbor/html/interfaces/video_element.h rename to ext/lexbor/lexbor/html/interfaces/video_element.h diff --git a/ext/dom/lexbor/lexbor/html/interfaces/window.c b/ext/lexbor/lexbor/html/interfaces/window.c similarity index 100% rename from ext/dom/lexbor/lexbor/html/interfaces/window.c rename to ext/lexbor/lexbor/html/interfaces/window.c diff --git a/ext/dom/lexbor/lexbor/html/interfaces/window.h b/ext/lexbor/lexbor/html/interfaces/window.h similarity index 100% rename from ext/dom/lexbor/lexbor/html/interfaces/window.h rename to ext/lexbor/lexbor/html/interfaces/window.h diff --git a/ext/dom/lexbor/lexbor/html/node.c b/ext/lexbor/lexbor/html/node.c similarity index 100% rename from ext/dom/lexbor/lexbor/html/node.c rename to ext/lexbor/lexbor/html/node.c diff --git a/ext/dom/lexbor/lexbor/html/node.h b/ext/lexbor/lexbor/html/node.h similarity index 100% rename from ext/dom/lexbor/lexbor/html/node.h rename to ext/lexbor/lexbor/html/node.h diff --git a/ext/dom/lexbor/lexbor/html/parser.c b/ext/lexbor/lexbor/html/parser.c similarity index 100% rename from ext/dom/lexbor/lexbor/html/parser.c rename to ext/lexbor/lexbor/html/parser.c diff --git a/ext/dom/lexbor/lexbor/html/parser.h b/ext/lexbor/lexbor/html/parser.h similarity index 100% rename from ext/dom/lexbor/lexbor/html/parser.h rename to ext/lexbor/lexbor/html/parser.h diff --git a/ext/dom/lexbor/lexbor/html/serialize.h b/ext/lexbor/lexbor/html/serialize.h similarity index 100% rename from ext/dom/lexbor/lexbor/html/serialize.h rename to ext/lexbor/lexbor/html/serialize.h diff --git a/ext/dom/lexbor/lexbor/html/style.c b/ext/lexbor/lexbor/html/style.c similarity index 100% rename from ext/dom/lexbor/lexbor/html/style.c rename to ext/lexbor/lexbor/html/style.c diff --git a/ext/dom/lexbor/lexbor/html/style.h b/ext/lexbor/lexbor/html/style.h similarity index 100% rename from ext/dom/lexbor/lexbor/html/style.h rename to ext/lexbor/lexbor/html/style.h diff --git a/ext/dom/lexbor/lexbor/html/tag.h b/ext/lexbor/lexbor/html/tag.h similarity index 100% rename from ext/dom/lexbor/lexbor/html/tag.h rename to ext/lexbor/lexbor/html/tag.h diff --git a/ext/dom/lexbor/lexbor/html/tag_res.h b/ext/lexbor/lexbor/html/tag_res.h similarity index 100% rename from ext/dom/lexbor/lexbor/html/tag_res.h rename to ext/lexbor/lexbor/html/tag_res.h diff --git a/ext/dom/lexbor/lexbor/html/token.c b/ext/lexbor/lexbor/html/token.c similarity index 100% rename from ext/dom/lexbor/lexbor/html/token.c rename to ext/lexbor/lexbor/html/token.c diff --git a/ext/dom/lexbor/lexbor/html/token.h b/ext/lexbor/lexbor/html/token.h similarity index 100% rename from ext/dom/lexbor/lexbor/html/token.h rename to ext/lexbor/lexbor/html/token.h diff --git a/ext/dom/lexbor/lexbor/html/token_attr.c b/ext/lexbor/lexbor/html/token_attr.c similarity index 100% rename from ext/dom/lexbor/lexbor/html/token_attr.c rename to ext/lexbor/lexbor/html/token_attr.c diff --git a/ext/dom/lexbor/lexbor/html/token_attr.h b/ext/lexbor/lexbor/html/token_attr.h similarity index 100% rename from ext/dom/lexbor/lexbor/html/token_attr.h rename to ext/lexbor/lexbor/html/token_attr.h diff --git a/ext/dom/lexbor/lexbor/html/tokenizer.c b/ext/lexbor/lexbor/html/tokenizer.c similarity index 100% rename from ext/dom/lexbor/lexbor/html/tokenizer.c rename to ext/lexbor/lexbor/html/tokenizer.c diff --git a/ext/dom/lexbor/lexbor/html/tokenizer.h b/ext/lexbor/lexbor/html/tokenizer.h similarity index 100% rename from ext/dom/lexbor/lexbor/html/tokenizer.h rename to ext/lexbor/lexbor/html/tokenizer.h diff --git a/ext/dom/lexbor/lexbor/html/tokenizer/error.c b/ext/lexbor/lexbor/html/tokenizer/error.c similarity index 100% rename from ext/dom/lexbor/lexbor/html/tokenizer/error.c rename to ext/lexbor/lexbor/html/tokenizer/error.c diff --git a/ext/dom/lexbor/lexbor/html/tokenizer/error.h b/ext/lexbor/lexbor/html/tokenizer/error.h similarity index 100% rename from ext/dom/lexbor/lexbor/html/tokenizer/error.h rename to ext/lexbor/lexbor/html/tokenizer/error.h diff --git a/ext/dom/lexbor/lexbor/html/tokenizer/res.h b/ext/lexbor/lexbor/html/tokenizer/res.h similarity index 100% rename from ext/dom/lexbor/lexbor/html/tokenizer/res.h rename to ext/lexbor/lexbor/html/tokenizer/res.h diff --git a/ext/dom/lexbor/lexbor/html/tokenizer/state.c b/ext/lexbor/lexbor/html/tokenizer/state.c similarity index 100% rename from ext/dom/lexbor/lexbor/html/tokenizer/state.c rename to ext/lexbor/lexbor/html/tokenizer/state.c diff --git a/ext/dom/lexbor/lexbor/html/tokenizer/state.h b/ext/lexbor/lexbor/html/tokenizer/state.h similarity index 100% rename from ext/dom/lexbor/lexbor/html/tokenizer/state.h rename to ext/lexbor/lexbor/html/tokenizer/state.h diff --git a/ext/dom/lexbor/lexbor/html/tokenizer/state_comment.c b/ext/lexbor/lexbor/html/tokenizer/state_comment.c similarity index 100% rename from ext/dom/lexbor/lexbor/html/tokenizer/state_comment.c rename to ext/lexbor/lexbor/html/tokenizer/state_comment.c diff --git a/ext/dom/lexbor/lexbor/html/tokenizer/state_comment.h b/ext/lexbor/lexbor/html/tokenizer/state_comment.h similarity index 100% rename from ext/dom/lexbor/lexbor/html/tokenizer/state_comment.h rename to ext/lexbor/lexbor/html/tokenizer/state_comment.h diff --git a/ext/dom/lexbor/lexbor/html/tokenizer/state_doctype.c b/ext/lexbor/lexbor/html/tokenizer/state_doctype.c similarity index 100% rename from ext/dom/lexbor/lexbor/html/tokenizer/state_doctype.c rename to ext/lexbor/lexbor/html/tokenizer/state_doctype.c diff --git a/ext/dom/lexbor/lexbor/html/tokenizer/state_doctype.h b/ext/lexbor/lexbor/html/tokenizer/state_doctype.h similarity index 100% rename from ext/dom/lexbor/lexbor/html/tokenizer/state_doctype.h rename to ext/lexbor/lexbor/html/tokenizer/state_doctype.h diff --git a/ext/dom/lexbor/lexbor/html/tokenizer/state_rawtext.c b/ext/lexbor/lexbor/html/tokenizer/state_rawtext.c similarity index 100% rename from ext/dom/lexbor/lexbor/html/tokenizer/state_rawtext.c rename to ext/lexbor/lexbor/html/tokenizer/state_rawtext.c diff --git a/ext/dom/lexbor/lexbor/html/tokenizer/state_rawtext.h b/ext/lexbor/lexbor/html/tokenizer/state_rawtext.h similarity index 100% rename from ext/dom/lexbor/lexbor/html/tokenizer/state_rawtext.h rename to ext/lexbor/lexbor/html/tokenizer/state_rawtext.h diff --git a/ext/dom/lexbor/lexbor/html/tokenizer/state_rcdata.c b/ext/lexbor/lexbor/html/tokenizer/state_rcdata.c similarity index 100% rename from ext/dom/lexbor/lexbor/html/tokenizer/state_rcdata.c rename to ext/lexbor/lexbor/html/tokenizer/state_rcdata.c diff --git a/ext/dom/lexbor/lexbor/html/tokenizer/state_rcdata.h b/ext/lexbor/lexbor/html/tokenizer/state_rcdata.h similarity index 100% rename from ext/dom/lexbor/lexbor/html/tokenizer/state_rcdata.h rename to ext/lexbor/lexbor/html/tokenizer/state_rcdata.h diff --git a/ext/dom/lexbor/lexbor/html/tokenizer/state_script.c b/ext/lexbor/lexbor/html/tokenizer/state_script.c similarity index 100% rename from ext/dom/lexbor/lexbor/html/tokenizer/state_script.c rename to ext/lexbor/lexbor/html/tokenizer/state_script.c diff --git a/ext/dom/lexbor/lexbor/html/tokenizer/state_script.h b/ext/lexbor/lexbor/html/tokenizer/state_script.h similarity index 100% rename from ext/dom/lexbor/lexbor/html/tokenizer/state_script.h rename to ext/lexbor/lexbor/html/tokenizer/state_script.h diff --git a/ext/dom/lexbor/lexbor/html/tree.c b/ext/lexbor/lexbor/html/tree.c similarity index 100% rename from ext/dom/lexbor/lexbor/html/tree.c rename to ext/lexbor/lexbor/html/tree.c diff --git a/ext/dom/lexbor/lexbor/html/tree.h b/ext/lexbor/lexbor/html/tree.h similarity index 100% rename from ext/dom/lexbor/lexbor/html/tree.h rename to ext/lexbor/lexbor/html/tree.h diff --git a/ext/dom/lexbor/lexbor/html/tree/active_formatting.c b/ext/lexbor/lexbor/html/tree/active_formatting.c similarity index 100% rename from ext/dom/lexbor/lexbor/html/tree/active_formatting.c rename to ext/lexbor/lexbor/html/tree/active_formatting.c diff --git a/ext/dom/lexbor/lexbor/html/tree/active_formatting.h b/ext/lexbor/lexbor/html/tree/active_formatting.h similarity index 100% rename from ext/dom/lexbor/lexbor/html/tree/active_formatting.h rename to ext/lexbor/lexbor/html/tree/active_formatting.h diff --git a/ext/dom/lexbor/lexbor/html/tree/error.c b/ext/lexbor/lexbor/html/tree/error.c similarity index 100% rename from ext/dom/lexbor/lexbor/html/tree/error.c rename to ext/lexbor/lexbor/html/tree/error.c diff --git a/ext/dom/lexbor/lexbor/html/tree/error.h b/ext/lexbor/lexbor/html/tree/error.h similarity index 100% rename from ext/dom/lexbor/lexbor/html/tree/error.h rename to ext/lexbor/lexbor/html/tree/error.h diff --git a/ext/dom/lexbor/lexbor/html/tree/insertion_mode.h b/ext/lexbor/lexbor/html/tree/insertion_mode.h similarity index 100% rename from ext/dom/lexbor/lexbor/html/tree/insertion_mode.h rename to ext/lexbor/lexbor/html/tree/insertion_mode.h diff --git a/ext/dom/lexbor/lexbor/html/tree/insertion_mode/after_after_body.c b/ext/lexbor/lexbor/html/tree/insertion_mode/after_after_body.c similarity index 100% rename from ext/dom/lexbor/lexbor/html/tree/insertion_mode/after_after_body.c rename to ext/lexbor/lexbor/html/tree/insertion_mode/after_after_body.c diff --git a/ext/dom/lexbor/lexbor/html/tree/insertion_mode/after_after_frameset.c b/ext/lexbor/lexbor/html/tree/insertion_mode/after_after_frameset.c similarity index 100% rename from ext/dom/lexbor/lexbor/html/tree/insertion_mode/after_after_frameset.c rename to ext/lexbor/lexbor/html/tree/insertion_mode/after_after_frameset.c diff --git a/ext/dom/lexbor/lexbor/html/tree/insertion_mode/after_body.c b/ext/lexbor/lexbor/html/tree/insertion_mode/after_body.c similarity index 100% rename from ext/dom/lexbor/lexbor/html/tree/insertion_mode/after_body.c rename to ext/lexbor/lexbor/html/tree/insertion_mode/after_body.c diff --git a/ext/dom/lexbor/lexbor/html/tree/insertion_mode/after_frameset.c b/ext/lexbor/lexbor/html/tree/insertion_mode/after_frameset.c similarity index 100% rename from ext/dom/lexbor/lexbor/html/tree/insertion_mode/after_frameset.c rename to ext/lexbor/lexbor/html/tree/insertion_mode/after_frameset.c diff --git a/ext/dom/lexbor/lexbor/html/tree/insertion_mode/after_head.c b/ext/lexbor/lexbor/html/tree/insertion_mode/after_head.c similarity index 100% rename from ext/dom/lexbor/lexbor/html/tree/insertion_mode/after_head.c rename to ext/lexbor/lexbor/html/tree/insertion_mode/after_head.c diff --git a/ext/dom/lexbor/lexbor/html/tree/insertion_mode/before_head.c b/ext/lexbor/lexbor/html/tree/insertion_mode/before_head.c similarity index 100% rename from ext/dom/lexbor/lexbor/html/tree/insertion_mode/before_head.c rename to ext/lexbor/lexbor/html/tree/insertion_mode/before_head.c diff --git a/ext/dom/lexbor/lexbor/html/tree/insertion_mode/before_html.c b/ext/lexbor/lexbor/html/tree/insertion_mode/before_html.c similarity index 100% rename from ext/dom/lexbor/lexbor/html/tree/insertion_mode/before_html.c rename to ext/lexbor/lexbor/html/tree/insertion_mode/before_html.c diff --git a/ext/dom/lexbor/lexbor/html/tree/insertion_mode/foreign_content.c b/ext/lexbor/lexbor/html/tree/insertion_mode/foreign_content.c similarity index 100% rename from ext/dom/lexbor/lexbor/html/tree/insertion_mode/foreign_content.c rename to ext/lexbor/lexbor/html/tree/insertion_mode/foreign_content.c diff --git a/ext/dom/lexbor/lexbor/html/tree/insertion_mode/in_body.c b/ext/lexbor/lexbor/html/tree/insertion_mode/in_body.c similarity index 100% rename from ext/dom/lexbor/lexbor/html/tree/insertion_mode/in_body.c rename to ext/lexbor/lexbor/html/tree/insertion_mode/in_body.c diff --git a/ext/dom/lexbor/lexbor/html/tree/insertion_mode/in_caption.c b/ext/lexbor/lexbor/html/tree/insertion_mode/in_caption.c similarity index 100% rename from ext/dom/lexbor/lexbor/html/tree/insertion_mode/in_caption.c rename to ext/lexbor/lexbor/html/tree/insertion_mode/in_caption.c diff --git a/ext/dom/lexbor/lexbor/html/tree/insertion_mode/in_cell.c b/ext/lexbor/lexbor/html/tree/insertion_mode/in_cell.c similarity index 100% rename from ext/dom/lexbor/lexbor/html/tree/insertion_mode/in_cell.c rename to ext/lexbor/lexbor/html/tree/insertion_mode/in_cell.c diff --git a/ext/dom/lexbor/lexbor/html/tree/insertion_mode/in_column_group.c b/ext/lexbor/lexbor/html/tree/insertion_mode/in_column_group.c similarity index 100% rename from ext/dom/lexbor/lexbor/html/tree/insertion_mode/in_column_group.c rename to ext/lexbor/lexbor/html/tree/insertion_mode/in_column_group.c diff --git a/ext/dom/lexbor/lexbor/html/tree/insertion_mode/in_frameset.c b/ext/lexbor/lexbor/html/tree/insertion_mode/in_frameset.c similarity index 100% rename from ext/dom/lexbor/lexbor/html/tree/insertion_mode/in_frameset.c rename to ext/lexbor/lexbor/html/tree/insertion_mode/in_frameset.c diff --git a/ext/dom/lexbor/lexbor/html/tree/insertion_mode/in_head.c b/ext/lexbor/lexbor/html/tree/insertion_mode/in_head.c similarity index 100% rename from ext/dom/lexbor/lexbor/html/tree/insertion_mode/in_head.c rename to ext/lexbor/lexbor/html/tree/insertion_mode/in_head.c diff --git a/ext/dom/lexbor/lexbor/html/tree/insertion_mode/in_head_noscript.c b/ext/lexbor/lexbor/html/tree/insertion_mode/in_head_noscript.c similarity index 100% rename from ext/dom/lexbor/lexbor/html/tree/insertion_mode/in_head_noscript.c rename to ext/lexbor/lexbor/html/tree/insertion_mode/in_head_noscript.c diff --git a/ext/dom/lexbor/lexbor/html/tree/insertion_mode/in_row.c b/ext/lexbor/lexbor/html/tree/insertion_mode/in_row.c similarity index 100% rename from ext/dom/lexbor/lexbor/html/tree/insertion_mode/in_row.c rename to ext/lexbor/lexbor/html/tree/insertion_mode/in_row.c diff --git a/ext/dom/lexbor/lexbor/html/tree/insertion_mode/in_select.c b/ext/lexbor/lexbor/html/tree/insertion_mode/in_select.c similarity index 100% rename from ext/dom/lexbor/lexbor/html/tree/insertion_mode/in_select.c rename to ext/lexbor/lexbor/html/tree/insertion_mode/in_select.c diff --git a/ext/dom/lexbor/lexbor/html/tree/insertion_mode/in_select_in_table.c b/ext/lexbor/lexbor/html/tree/insertion_mode/in_select_in_table.c similarity index 100% rename from ext/dom/lexbor/lexbor/html/tree/insertion_mode/in_select_in_table.c rename to ext/lexbor/lexbor/html/tree/insertion_mode/in_select_in_table.c diff --git a/ext/dom/lexbor/lexbor/html/tree/insertion_mode/in_table.c b/ext/lexbor/lexbor/html/tree/insertion_mode/in_table.c similarity index 100% rename from ext/dom/lexbor/lexbor/html/tree/insertion_mode/in_table.c rename to ext/lexbor/lexbor/html/tree/insertion_mode/in_table.c diff --git a/ext/dom/lexbor/lexbor/html/tree/insertion_mode/in_table_body.c b/ext/lexbor/lexbor/html/tree/insertion_mode/in_table_body.c similarity index 100% rename from ext/dom/lexbor/lexbor/html/tree/insertion_mode/in_table_body.c rename to ext/lexbor/lexbor/html/tree/insertion_mode/in_table_body.c diff --git a/ext/dom/lexbor/lexbor/html/tree/insertion_mode/in_table_text.c b/ext/lexbor/lexbor/html/tree/insertion_mode/in_table_text.c similarity index 100% rename from ext/dom/lexbor/lexbor/html/tree/insertion_mode/in_table_text.c rename to ext/lexbor/lexbor/html/tree/insertion_mode/in_table_text.c diff --git a/ext/dom/lexbor/lexbor/html/tree/insertion_mode/in_template.c b/ext/lexbor/lexbor/html/tree/insertion_mode/in_template.c similarity index 100% rename from ext/dom/lexbor/lexbor/html/tree/insertion_mode/in_template.c rename to ext/lexbor/lexbor/html/tree/insertion_mode/in_template.c diff --git a/ext/dom/lexbor/lexbor/html/tree/insertion_mode/initial.c b/ext/lexbor/lexbor/html/tree/insertion_mode/initial.c similarity index 100% rename from ext/dom/lexbor/lexbor/html/tree/insertion_mode/initial.c rename to ext/lexbor/lexbor/html/tree/insertion_mode/initial.c diff --git a/ext/dom/lexbor/lexbor/html/tree/insertion_mode/text.c b/ext/lexbor/lexbor/html/tree/insertion_mode/text.c similarity index 100% rename from ext/dom/lexbor/lexbor/html/tree/insertion_mode/text.c rename to ext/lexbor/lexbor/html/tree/insertion_mode/text.c diff --git a/ext/dom/lexbor/lexbor/html/tree/open_elements.c b/ext/lexbor/lexbor/html/tree/open_elements.c similarity index 100% rename from ext/dom/lexbor/lexbor/html/tree/open_elements.c rename to ext/lexbor/lexbor/html/tree/open_elements.c diff --git a/ext/dom/lexbor/lexbor/html/tree/open_elements.h b/ext/lexbor/lexbor/html/tree/open_elements.h similarity index 100% rename from ext/dom/lexbor/lexbor/html/tree/open_elements.h rename to ext/lexbor/lexbor/html/tree/open_elements.h diff --git a/ext/dom/lexbor/lexbor/html/tree/template_insertion.c b/ext/lexbor/lexbor/html/tree/template_insertion.c similarity index 100% rename from ext/dom/lexbor/lexbor/html/tree/template_insertion.c rename to ext/lexbor/lexbor/html/tree/template_insertion.c diff --git a/ext/dom/lexbor/lexbor/html/tree/template_insertion.h b/ext/lexbor/lexbor/html/tree/template_insertion.h similarity index 100% rename from ext/dom/lexbor/lexbor/html/tree/template_insertion.h rename to ext/lexbor/lexbor/html/tree/template_insertion.h diff --git a/ext/dom/lexbor/lexbor/html/tree_res.h b/ext/lexbor/lexbor/html/tree_res.h similarity index 100% rename from ext/dom/lexbor/lexbor/html/tree_res.h rename to ext/lexbor/lexbor/html/tree_res.h diff --git a/ext/dom/lexbor/lexbor/ns/base.h b/ext/lexbor/lexbor/ns/base.h similarity index 100% rename from ext/dom/lexbor/lexbor/ns/base.h rename to ext/lexbor/lexbor/ns/base.h diff --git a/ext/dom/lexbor/lexbor/ns/const.h b/ext/lexbor/lexbor/ns/const.h similarity index 100% rename from ext/dom/lexbor/lexbor/ns/const.h rename to ext/lexbor/lexbor/ns/const.h diff --git a/ext/dom/lexbor/lexbor/ns/ns.c b/ext/lexbor/lexbor/ns/ns.c similarity index 100% rename from ext/dom/lexbor/lexbor/ns/ns.c rename to ext/lexbor/lexbor/ns/ns.c diff --git a/ext/dom/lexbor/lexbor/ns/ns.h b/ext/lexbor/lexbor/ns/ns.h similarity index 100% rename from ext/dom/lexbor/lexbor/ns/ns.h rename to ext/lexbor/lexbor/ns/ns.h diff --git a/ext/dom/lexbor/lexbor/ns/res.h b/ext/lexbor/lexbor/ns/res.h similarity index 100% rename from ext/dom/lexbor/lexbor/ns/res.h rename to ext/lexbor/lexbor/ns/res.h diff --git a/ext/dom/lexbor/lexbor/ports/posix/lexbor/core/memory.c b/ext/lexbor/lexbor/ports/posix/lexbor/core/memory.c similarity index 100% rename from ext/dom/lexbor/lexbor/ports/posix/lexbor/core/memory.c rename to ext/lexbor/lexbor/ports/posix/lexbor/core/memory.c diff --git a/ext/dom/lexbor/lexbor/ports/windows_nt/lexbor/core/memory.c b/ext/lexbor/lexbor/ports/windows_nt/lexbor/core/memory.c similarity index 100% rename from ext/dom/lexbor/lexbor/ports/windows_nt/lexbor/core/memory.c rename to ext/lexbor/lexbor/ports/windows_nt/lexbor/core/memory.c diff --git a/ext/dom/lexbor/lexbor/selectors/base.h b/ext/lexbor/lexbor/selectors/base.h similarity index 100% rename from ext/dom/lexbor/lexbor/selectors/base.h rename to ext/lexbor/lexbor/selectors/base.h diff --git a/ext/dom/lexbor/lexbor/selectors/selectors.c b/ext/lexbor/lexbor/selectors/selectors.c similarity index 100% rename from ext/dom/lexbor/lexbor/selectors/selectors.c rename to ext/lexbor/lexbor/selectors/selectors.c diff --git a/ext/dom/lexbor/lexbor/selectors/selectors.h b/ext/lexbor/lexbor/selectors/selectors.h similarity index 100% rename from ext/dom/lexbor/lexbor/selectors/selectors.h rename to ext/lexbor/lexbor/selectors/selectors.h diff --git a/ext/dom/lexbor/lexbor/tag/base.h b/ext/lexbor/lexbor/tag/base.h similarity index 100% rename from ext/dom/lexbor/lexbor/tag/base.h rename to ext/lexbor/lexbor/tag/base.h diff --git a/ext/dom/lexbor/lexbor/tag/const.h b/ext/lexbor/lexbor/tag/const.h similarity index 100% rename from ext/dom/lexbor/lexbor/tag/const.h rename to ext/lexbor/lexbor/tag/const.h diff --git a/ext/dom/lexbor/lexbor/tag/res.h b/ext/lexbor/lexbor/tag/res.h similarity index 100% rename from ext/dom/lexbor/lexbor/tag/res.h rename to ext/lexbor/lexbor/tag/res.h diff --git a/ext/dom/lexbor/lexbor/tag/tag.c b/ext/lexbor/lexbor/tag/tag.c similarity index 100% rename from ext/dom/lexbor/lexbor/tag/tag.c rename to ext/lexbor/lexbor/tag/tag.c diff --git a/ext/dom/lexbor/lexbor/tag/tag.h b/ext/lexbor/lexbor/tag/tag.h similarity index 100% rename from ext/dom/lexbor/lexbor/tag/tag.h rename to ext/lexbor/lexbor/tag/tag.h diff --git a/ext/dom/lexbor/patches/0001-Expose-line-and-column-information-for-use-in-PHP.patch b/ext/lexbor/patches/0001-Expose-line-and-column-information-for-use-in-PHP.patch similarity index 100% rename from ext/dom/lexbor/patches/0001-Expose-line-and-column-information-for-use-in-PHP.patch rename to ext/lexbor/patches/0001-Expose-line-and-column-information-for-use-in-PHP.patch diff --git a/ext/dom/lexbor/patches/0002-Track-implied-added-nodes-for-options-use-in-PHP.patch b/ext/lexbor/patches/0002-Track-implied-added-nodes-for-options-use-in-PHP.patch similarity index 100% rename from ext/dom/lexbor/patches/0002-Track-implied-added-nodes-for-options-use-in-PHP.patch rename to ext/lexbor/patches/0002-Track-implied-added-nodes-for-options-use-in-PHP.patch diff --git a/ext/dom/lexbor/patches/0003-Patch-utilities-and-data-structure-to-be-able-to-gen.patch b/ext/lexbor/patches/0003-Patch-utilities-and-data-structure-to-be-able-to-gen.patch similarity index 100% rename from ext/dom/lexbor/patches/0003-Patch-utilities-and-data-structure-to-be-able-to-gen.patch rename to ext/lexbor/patches/0003-Patch-utilities-and-data-structure-to-be-able-to-gen.patch diff --git a/ext/dom/lexbor/patches/0004-Remove-unused-upper-case-tag-static-data.patch b/ext/lexbor/patches/0004-Remove-unused-upper-case-tag-static-data.patch similarity index 100% rename from ext/dom/lexbor/patches/0004-Remove-unused-upper-case-tag-static-data.patch rename to ext/lexbor/patches/0004-Remove-unused-upper-case-tag-static-data.patch diff --git a/ext/dom/lexbor/patches/0005-Shrink-size-of-static-binary-search-tree.patch b/ext/lexbor/patches/0005-Shrink-size-of-static-binary-search-tree.patch similarity index 100% rename from ext/dom/lexbor/patches/0005-Shrink-size-of-static-binary-search-tree.patch rename to ext/lexbor/patches/0005-Shrink-size-of-static-binary-search-tree.patch diff --git a/ext/dom/lexbor/patches/0006-Patch-out-unused-CSS-style-code.patch b/ext/lexbor/patches/0006-Patch-out-unused-CSS-style-code.patch similarity index 100% rename from ext/dom/lexbor/patches/0006-Patch-out-unused-CSS-style-code.patch rename to ext/lexbor/patches/0006-Patch-out-unused-CSS-style-code.patch diff --git a/ext/dom/lexbor/patches/README.md b/ext/lexbor/patches/README.md similarity index 100% rename from ext/dom/lexbor/patches/README.md rename to ext/lexbor/patches/README.md diff --git a/ext/lexbor/php_lexbor.c b/ext/lexbor/php_lexbor.c new file mode 100644 index 0000000000000..e6ba3ebee013e --- /dev/null +++ b/ext/lexbor/php_lexbor.c @@ -0,0 +1,58 @@ +/* + +----------------------------------------------------------------------+ + | Copyright (c) The PHP Group | + +----------------------------------------------------------------------+ + | This source file is subject to version 3.01 of the PHP license, | + | that is bundled with this package in the file LICENSE, and is | + | available through the world-wide-web at the following url: | + | https://www.php.net/license/3_01.txt | + | If you did not receive a copy of the PHP license and are unable to | + | obtain it through the world-wide-web, please send a note to | + | license@php.net so we can mail you a copy immediately. | + +----------------------------------------------------------------------+ + | Authors: Niels Dossche | + | Mate Kocsis | + +----------------------------------------------------------------------+ +*/ + +#ifdef HAVE_CONFIG_H +#include "config.h" +#endif + +#include "php.h" +#include "zend_globals.h" +#include "ext/standard/info.h" + +#ifdef HAVE_LEXBOR + +#include "php_lexbor.h" + +/* Dynamically loadable module stuff */ +#ifdef COMPILE_DL_LEXBOR +#ifdef ZTS +ZEND_TSRMLS_CACHE_DEFINE() +#endif +ZEND_GET_MODULE(lexbor) +#endif /* COMPILE_DL_LEXBOR */ + +static PHP_MINFO_FUNCTION(lexbor) +{ + php_info_print_table_start(); + php_info_print_table_row(2, "Lexbor support", "active"); + php_info_print_table_end(); +} + +zend_module_entry lexbor_module_entry = { + STANDARD_MODULE_HEADER, + "lexbor", /* extension name */ + NULL, /* extension function list */ + NULL, /* extension-wide startup function */ + NULL, /* extension-wide shutdown function */ + NULL, /* per-request startup function */ + NULL, /* per-request shutdown function */ + PHP_MINFO(lexbor), /* information function */ + NULL, + STANDARD_MODULE_PROPERTIES +}; + +#endif diff --git a/ext/lexbor/php_lexbor.h b/ext/lexbor/php_lexbor.h new file mode 100644 index 0000000000000..fbdc71746dcaa --- /dev/null +++ b/ext/lexbor/php_lexbor.h @@ -0,0 +1,30 @@ +/* + +----------------------------------------------------------------------+ + | Copyright (c) The PHP Group | + +----------------------------------------------------------------------+ + | This source file is subject to version 3.01 of the PHP license, | + | that is bundled with this package in the file LICENSE, and is | + | available through the world-wide-web at the following url: | + | https://www.php.net/license/3_01.txt | + | If you did not receive a copy of the PHP license and are unable to | + | obtain it through the world-wide-web, please send a note to | + | license@php.net so we can mail you a copy immediately. | + +----------------------------------------------------------------------+ + | Authors: Niels Dossche | + | Mate Kocsis | + +----------------------------------------------------------------------+ +*/ + +#ifndef PHP_LEXBOR_H +#define PHP_LEXBOR_H + +#ifdef HAVE_LEXBOR +extern zend_module_entry lexbor_module_entry; +#define phpext_lexbor_ptr &lexbor_module_entry + +#if defined(ZTS) && defined(COMPILE_DL_LEXBOR) +ZEND_TSRMLS_CACHE_EXTERN() +#endif + +#endif +#endif /* PHP_LEXBOR_H */ From 4d88b3fda1e967c0fee64dab2eb23e948f265bd2 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?M=C3=A1t=C3=A9=20Kocsis?= Date: Tue, 13 May 2025 11:47:00 +0200 Subject: [PATCH 2/3] Update EXTENSIONS Co-authored-by: Gina Peter Banyard --- EXTENSIONS | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/EXTENSIONS b/EXTENSIONS index 595017a4e22ac..5a2345a90b914 100644 --- a/EXTENSIONS +++ b/EXTENSIONS @@ -200,7 +200,7 @@ PRIMARY MAINTAINER: Niels Dossche (2023 - 2025) Mate Kocsis (2025 - 2025) MAINTENANCE: Maintained STATUS: Working -SINCE: 5.0 +SINCE: 8.5 ------------------------------------------------------------------------------- EXTENSION: libxml PRIMARY MAINTAINER: Rob Richards (2003 - 2009) From 78d185b07d647e06480dab5abec647c64773ceec Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?M=C3=A1t=C3=A9=20Kocsis?= Date: Tue, 13 May 2025 22:12:09 +0200 Subject: [PATCH 3/3] Trying to fix Windows builds --- ext/dom/config.w32 | 8 +++++--- ext/lexbor/config.w32 | 4 ++-- 2 files changed, 7 insertions(+), 5 deletions(-) diff --git a/ext/dom/config.w32 b/ext/dom/config.w32 index 4bbbd719f271f..b6fc93b174135 100644 --- a/ext/dom/config.w32 +++ b/ext/dom/config.w32 @@ -5,7 +5,6 @@ ARG_WITH("dom", "DOM support", "yes"); if (PHP_DOM == "yes") { if (PHP_LIBXML == "yes" && ADD_EXTENSION_DEP('dom', 'libxml') && - ADD_EXTENSION_DEP('dom', 'lexbor') && CHECK_HEADER_ADD_INCLUDE("libxml/parser.h", "CFLAGS_DOM", PHP_PHP_BUILD + "\\include\\libxml2") ) { EXTENSION("dom", "php_dom.c attr.c document.c infra.c \ @@ -17,7 +16,9 @@ if (PHP_DOM == "yes") { entityreference.c \ token_list.c \ notation.c xpath.c dom_iterators.c \ - namednodemap.c xpath_callbacks.c", null, ""); + namednodemap.c xpath_callbacks.c", null, "/I ext/lexbor"); + + ADD_EXTENSION_DEP('dom', 'lexbor'); ADD_SOURCES("ext/dom/parentnode", "tree.c css_selectors.c", "dom"); ADD_SOURCES("ext/dom/lexbor/selectors-adapted", "selectors.c", "dom"); @@ -35,7 +36,8 @@ if (PHP_DOM == "yes") { "dom_ce.h " + "namespace_compat.h " + "xml_common.h " + - "xpath_callbacks.h " + "xpath_callbacks.h " + + "lexbor/selectors-adapted/selectors.h " ); } else { WARNING("dom support can't be enabled, libxml is not enabled") diff --git a/ext/lexbor/config.w32 b/ext/lexbor/config.w32 index de34643727e54..c1ea496bd9723 100644 --- a/ext/lexbor/config.w32 +++ b/ext/lexbor/config.w32 @@ -3,7 +3,7 @@ ARG_ENABLE("lexbor", "Lexbor support", "yes"); if (PHP_LEXBOR == "yes") { - EXTENSION("lexbor", "php_lexbor.c", null, "-Iext/lexbor /DZEND_ENABLE_STATIC_TSRMLS_CACHE=1"); + EXTENSION("lexbor", "php_lexbor.c", null, "/I " + configure_module_dirname + " /DZEND_ENABLE_STATIC_TSRMLS_CACHE=1"); ADD_SOURCES("ext/lexbor", "php_lexbor.c", "lexbor"); ADD_SOURCES("ext/lexbor/lexbor/ports/windows_nt/lexbor/core", "memory.c", "lexbor"); @@ -26,5 +26,5 @@ if (PHP_LEXBOR == "yes") { AC_DEFINE("HAVE_LEXBOR", 1, "Define to 1 if the PHP extension 'lexbor' is available."); - PHP_INSTALL_HEADERS("ext/lexbor", "php_lexbor.h"); + PHP_INSTALL_HEADERS("ext/lexbor", "php_lexbor.h lexbor/"); }