BodyRules final class
Minn\Html\Tree\BodyRules · public/minn/src/Minn/Html/Tree/BodyRules.php · 418 lines
The "in body" insertion mode, with select handled in body as the current spec does (no "in select" mode). The adoption agency runs its simple cases (the formatting element is closed with nothing special inside it); the reference stops on the others, and on an end tag for a formatting element that is not active.
Constants and properties
| const | FORMATTING = array ( 0 => 'A', 1 => 'B', 2 => 'BIG', 3 => 'CODE', 4 => 'EM', 5 => 'FONT', 6 => 'I', 7 => 'NOBR', 8 => 'S', 9 => 'SMALL', 10 => 'STRIKE', 11 => 'STRONG', 12 => 'TT', 13 => 'U', ) | |
| const | SPECIAL = array ( 0 => 'ADDRESS', 1 => 'APPLET', 2 => 'AREA', 3 => 'ARTICLE', 4 => 'ASIDE', 5 => 'BASE', 6 => 'BASEFONT', 7 => 'BGSOUND', 8 => 'BLOCKQUOTE', 9 => 'BODY', 10 => 'BR', 11 => 'BUTTON', 12 => 'CAPTION', 13 => 'CENTER', 14 => 'COL', 15 => 'COLGROUP', 16 => 'DD', 17 => 'DETAILS', 18 => 'DIR', 19 => 'DIV', 20 => 'DL', 21 => 'DT', 22 => 'EMBED', 23 => 'FIELDSET', 24 => 'FIGCAPTION', 25 => 'FIGURE', 26 => 'FOOTER', 27 => 'FORM', 28 => 'FRAME', 29 => 'FRAMESET', 30 => 'H1', 31 => 'H2', 32 => 'H3', 33 => 'H4', 34 => 'H5', 35 => 'H6', 36 => 'HEAD', 37 => 'HEADER', 38 => 'HGROUP', 39 => 'HR', 40 => 'HTML', 41 => 'IFRAME', 42 => 'IMG', 43 => 'INPUT', 44 => 'KEYGEN', 45 => 'LI', 46 => 'LINK', 47 => 'LISTING', 48 => 'MAIN', 49 => 'MARQUEE', 50 => 'MENU', 51 => 'META', 52 => 'NAV', 53 => 'NOEMBED', 54 => 'NOFRAMES', 55 => 'NOSCRIPT', 56 => 'OBJECT', 57 => 'OL', 58 => 'P', 59 => 'PARAM', 60 => 'PLAINTEXT', 61 => 'PRE', 62 => 'SCRIPT', 63 => 'SEARCH', 64 => 'SECTION', 65 => 'SELECT', 66 => 'SOURCE', 67 => 'STYLE', 68 => 'SUMMARY', 69 => 'TABLE', 70 => 'TBODY', 71 => 'TD', 72 => 'TEMPLATE', 73 => 'TEXTAREA', 74 => 'TFOOT', 75 => 'TH', 76 => 'THEAD', 77 => 'TITLE', 78 => 'TR', 79 => 'TRACK', 80 => 'UL', 81 => 'WBR', 82 => 'XMP', ) | |
| private | BLOCKS = array ( 0 => 'ADDRESS', 1 => 'ARTICLE', 2 => 'ASIDE', 3 => 'BLOCKQUOTE', 4 => 'CENTER', 5 => 'DETAILS', 6 => 'DIALOG', 7 => 'DIR', 8 => 'DIV', 9 => 'DL', 10 => 'FIELDSET', 11 => 'FIGCAPTION', 12 => 'FIGURE', 13 => 'FOOTER', 14 => 'HEADER', 15 => 'HGROUP', 16 => 'MAIN', 17 => 'MENU', 18 => 'NAV', 19 => 'OL', 20 => 'P', 21 => 'SEARCH', 22 => 'SECTION', 23 => 'SUMMARY', 24 => 'UL', ) | |
| private | BLOCK_ENDS = array ( 0 => 'ADDRESS', 1 => 'ARTICLE', 2 => 'ASIDE', 3 => 'BLOCKQUOTE', 4 => 'BUTTON', 5 => 'CENTER', 6 => 'DETAILS', 7 => 'DIALOG', 8 => 'DIR', 9 => 'DIV', 10 => 'DL', 11 => 'FIELDSET', 12 => 'FIGCAPTION', 13 => 'FIGURE', 14 => 'FOOTER', 15 => 'HEADER', 16 => 'HGROUP', 17 => 'LISTING', 18 => 'MAIN', 19 => 'MENU', 20 => 'NAV', 21 => 'OL', 22 => 'PRE', 23 => 'SEARCH', 24 => 'SECTION', 25 => 'SUMMARY', 26 => 'UL', ) | |
| private | HEADINGS = array ( 0 => 'H1', 1 => 'H2', 2 => 'H3', 3 => 'H4', 4 => 'H5', 5 => 'H6', ) |
Public
Internals 32
Private and protected methods: how the class does its work. Not a contract; they change whenever the code is tidied.
| private | text(Minn\Html\Tree\Builder $b, Minn\Html\Tree\Token $t): void# | |
| private | startTag(Minn\Html\Tree\Builder $b, Minn\Html\Tree\Token $t): void# | |
| private | endTag(Minn\Html\Tree\Builder $b, Minn\Html\Tree\Token $t): void# | |
| private | outerStart(Minn\Html\Tree\Builder $b, Minn\Html\Tree\Token $t): void# | |
| private | outerEnd(Minn\Html\Tree\Builder $b, Minn\Html\Tree\Token $t): void# | |
| private | block(Minn\Html\Tree\Builder $b): void# | |
| private | heading(Minn\Html\Tree\Builder $b): void# | |
| private | pre(Minn\Html\Tree\Builder $b): void# | |
| private | form(Minn\Html\Tree\Builder $b): void# | |
| private | listItem(Minn\Html\Tree\Builder $b, string $name): void# | |
| private | button(Minn\Html\Tree\Builder $b): void# | |
| private | anchor(Minn\Html\Tree\Builder $b): void# | |
| private | nobr(Minn\Html\Tree\Builder $b): void# | |
| private | formatting(Minn\Html\Tree\Builder $b): void# | |
| private | withMarker(Minn\Html\Tree\Builder $b): void# | |
| private | table(Minn\Html\Tree\Builder $b): void# | |
| private | voidElement(Minn\Html\Tree\Builder $b, Minn\Html\Tree\Token $t): void# | |
| private | hr(Minn\Html\Tree\Builder $b): void# | |
| private | rawText(Minn\Html\Tree\Builder $b, string $name): void# | |
| private | select(Minn\Html\Tree\Builder $b): void# | |
| private | option(Minn\Html\Tree\Builder $b, string $name): void# | |
| private | ruby(Minn\Html\Tree\Builder $b, string $name): void# | |
| private | foreign(Minn\Html\Tree\Builder $b, string $name): void# | |
| private | ordinary(Minn\Html\Tree\Builder $b): void# | |
| private | closeBlock(Minn\Html\Tree\Builder $b, string $name): void# | |
| private | closeForm(Minn\Html\Tree\Builder $b): void# | |
| private | closeParagraph(Minn\Html\Tree\Builder $b): void# | |
| private | closeListItem(Minn\Html\Tree\Builder $b, string $name): void# | |
| private | closeHeading(Minn\Html\Tree\Builder $b): void# | |
| private | closeWithMarker(Minn\Html\Tree\Builder $b, string $name): void# | |
| private | adoptionAgency(Minn\Html\Tree\Builder $b, string $name): void# | The adoption agency algorithm in the cases the reference runs: the formatting element closes with nothing special opened inside it. |
| private | anyOtherEnd(Minn\Html\Tree\Builder $b, string $name): void# |
Nothing matches.