Cogs.Core
insertion_mode.h
1// Copyright 2011 Google Inc. All Rights Reserved.
2//
3// Licensed under the Apache License, Version 2.0 (the "License");
4// you may not use this file except in compliance with the License.
5// You may obtain a copy of the License at
6//
7// http://www.apache.org/licenses/LICENSE-2.0
8//
9// Unless required by applicable law or agreed to in writing, software
10// distributed under the License is distributed on an "AS IS" BASIS,
11// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12// See the License for the specific language governing permissions and
13// limitations under the License.
14//
15// Author: jdtang@google.com (Jonathan Tang)
16
17#ifndef GUMBO_INSERTION_MODE_H_
18#define GUMBO_INSERTION_MODE_H_
19
20#ifdef __cplusplus
21extern "C" {
22#endif
23
24// http://www.whatwg.org/specs/web-apps/current-work/complete/parsing.html#insertion-mode
25// If new enum values are added, be sure to update the kTokenHandlers dispatch
26// table in parser.c.
27typedef enum {
28 GUMBO_INSERTION_MODE_INITIAL,
29 GUMBO_INSERTION_MODE_BEFORE_HTML,
30 GUMBO_INSERTION_MODE_BEFORE_HEAD,
31 GUMBO_INSERTION_MODE_IN_HEAD,
32 GUMBO_INSERTION_MODE_IN_HEAD_NOSCRIPT,
33 GUMBO_INSERTION_MODE_AFTER_HEAD,
34 GUMBO_INSERTION_MODE_IN_BODY,
35 GUMBO_INSERTION_MODE_TEXT,
36 GUMBO_INSERTION_MODE_IN_TABLE,
37 GUMBO_INSERTION_MODE_IN_TABLE_TEXT,
38 GUMBO_INSERTION_MODE_IN_CAPTION,
39 GUMBO_INSERTION_MODE_IN_COLUMN_GROUP,
40 GUMBO_INSERTION_MODE_IN_TABLE_BODY,
41 GUMBO_INSERTION_MODE_IN_ROW,
42 GUMBO_INSERTION_MODE_IN_CELL,
43 GUMBO_INSERTION_MODE_IN_SELECT,
44 GUMBO_INSERTION_MODE_IN_SELECT_IN_TABLE,
45 GUMBO_INSERTION_MODE_IN_TEMPLATE,
46 GUMBO_INSERTION_MODE_AFTER_BODY,
47 GUMBO_INSERTION_MODE_IN_FRAMESET,
48 GUMBO_INSERTION_MODE_AFTER_FRAMESET,
49 GUMBO_INSERTION_MODE_AFTER_AFTER_BODY,
50 GUMBO_INSERTION_MODE_AFTER_AFTER_FRAMESET
51} GumboInsertionMode;
52
53#ifdef __cplusplus
54} // extern C
55#endif
56
57#endif // GUMBO_INSERTION_MODE_H_