/
githubmirror
/
amphtml
Обзор
Документация
Войти
/
githubmirror
/
amphtml
Код
Запросы
0
Пакеты
0
Релизы
0
Аналитика
Безопасность
main
validator/cpp/htmlparser/data/supportedmediagrammar.txt
205 строк
5 KB
Amaltas
Sync for validator cpp engine and cpp htmlparser (#38410)
12 авг 2022, 19:39
Не верифицирован
12 авг 2022, 19:39
fe7cc1d
Код
Авторство
О чём код?
# # Copyright 2021 The AMP HTML Authors. All Rights Reserved. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. # You may obtain a copy of the License at # # http://www.apache.org/licenses/LICENSE-2.0 # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS-IS" BASIS, # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the license. # # Restricted subset of media queries as discussed at: # https://github.com/google/webpackager/blob/master/docs/supported_media.md # Begin. $ 'o' ONLY_N; $ 'a' ALL_L1; $ 's' SCREEN_C; $ "\t\n\r " $; # ONLY. ONLY_N 'n' ONLY_L; ONLY_L 'l' ONLY_Y; ONLY_Y 'y' SPACE_AFTER_ONLY; # ALL ALL_L1 'l' ALL_L2; ALL_L2 'l' SPACE_AFTER_SCREEN; SPACE_AFTER_ONLY "\t\n\r " SPACE_AFTER_ONLY; SPACE_AFTER_ONLY 's' SCREEN_C; SCREEN_C 'c' SCREEN_R; SCREEN_R 'r' SCREEN_E; SCREEN_E 'e' SCREEN_E2; SCREEN_E2 'e' SCREEN_N; SCREEN_N 'n' SPACE_AFTER_SCREEN; SPACE_AFTER_SCREEN "\t\n\r " SPACE_AFTER_SCREEN; SPACE_AFTER_SCREEN 'a' AND_N; AND_N 'n' AND_D; AND_D 'd' SPACE_AFTER_AND; SPACE_AFTER_AND "\t\n\r " SPACE_AFTER_AND; SPACE_AFTER_AND '(' EXPRESSION_BEGIN; # skip whitespaces. EXPRESSION_BEGIN "\t\n\r " EXPRESSION_BEGIN; EXPRESSION_BEGIN 'm' MIN_OR_MAX; # min- prefix expression. MIN_OR_MAX 'i' MIN_N; MIN_N 'n' MAX_HYPHEN; # max- prefix expression. MIN_OR_MAX 'a' MAX_X; MAX_X 'x' MAX_HYPHEN; MAX_HYPHEN '-' MINMAX_EXPRESSION_BEGIN; # width expression. MINMAX_EXPRESSION_BEGIN 'w' WIDTH_I; EXPRESSION_BEGIN 'w' WIDTH_I; WIDTH_I 'i' WIDTH_D; WIDTH_D 'd' WIDTH_T; WIDTH_T 't' WIDTH_H; WIDTH_H 'h' SPACE_OR_COLON|PUSH|LENGTH_NUMBER_BEGIN; # height expression. EXPRESSION_BEGIN 'h' HEIGHT_OR_HOVER; MINMAX_EXPRESSION_BEGIN 'h' HEIGHT_E; HEIGHT_OR_HOVER 'e' HEIGHT_I; HEIGHT_E 'e' HEIGHT_I; HEIGHT_I 'i' HEIGHT_G; HEIGHT_G 'g' HEIGHT_H; HEIGHT_H 'h' HEIGHT_T; HEIGHT_T 't' SPACE_OR_COLON|PUSH|LENGTH_NUMBER_BEGIN; # aspect-ratio. EXPRESSION_BEGIN 'a' ASPECT_RATIO_S; MINMAX_EXPRESSION_BEGIN 'a' ASPECT_RATIO_S; ASPECT_RATIO_S 's' ASPECT_RATIO_P; ASPECT_RATIO_P 'p' ASPECT_RATIO_E; ASPECT_RATIO_E 'e' ASPECT_RATIO_C; ASPECT_RATIO_C 'c' ASPECT_RATIO_T; ASPECT_RATIO_T 't' ASPECT_RATIO_HYPHEN; ASPECT_RATIO_HYPHEN '-' ASPECT_RATIO_R; ASPECT_RATIO_R 'r' ASPECT_RATIO_A2; ASPECT_RATIO_A2 'a' ASPECT_RATIO_T2; ASPECT_RATIO_T2 't' ASPECT_RATIO_I; ASPECT_RATIO_I 'i' ASPECT_RATIO_O; ASPECT_RATIO_O 'o' SPACE_OR_COLON|PUSH|RATIO_NUMERATOR_BEGIN; # device-aspect-ratio expression. EXPRESSION_BEGIN 'd' DEVICE_ASPECT_RATIO_E; MINMAX_EXPRESSION_BEGIN 'd' DEVICE_ASPECT_RATIO_E; DEVICE_ASPECT_RATIO_E 'e' DEVICE_ASPECT_RATIO_V; DEVICE_ASPECT_RATIO_V 'v' DEVICE_ASPECT_RATIO_I; DEVICE_ASPECT_RATIO_I 'i' DEVICE_ASPECT_RATIO_C; DEVICE_ASPECT_RATIO_C 'c' DEVICE_ASPECT_RATIO_E2; DEVICE_ASPECT_RATIO_E2 'e' DEVICE_ASPECT_RATIO_HYPHEN; DEVICE_ASPECT_RATIO_HYPHEN '-' DEVICE_HYPHEN_NEXT; DEVICE_HYPHEN_NEXT 'a' ASPECT_RATIO_S; DEVICE_HYPHEN_NEXT 'h' HEIGHT_OR_HOVER; DEVICE_HYPHEN_NEXT 'w' WIDTH_I; LENGTH_NUMBER_BEGIN "\t\n\r " LENGTH_NUMBER_BEGIN; LENGTH_NUMBER_BEGIN "1..9" LENGTH_NUMBER; LENGTH_NUMBER "0..9" LENGTH_NUMBER; # px, pt, or pc. LENGTH_NUMBER 'p' P_UNIT; P_UNIT 'x' END_LENGTH_UNIT; P_UNIT 't' END_LENGTH_UNIT; P_UNIT 'c' END_LENGTH_UNIT; # in. LENGTH_NUMBER 'i' INCH_UNIT; INCH_UNIT 'n' END_LENGTH_UNIT; # em. LENGTH_NUMBER 'e' EM_UNIT; EM_UNIT 'm' END_LENGTH_UNIT; # cm. LENGTH_NUMBER 'c' CM_UNIT; CM_UNIT 'm' END_LENGTH_UNIT; # mm. LENGTH_NUMBER 'm' MM_UNIT; MM_UNIT 'm' END_LENGTH_UNIT; RATIO_NUMERATOR_BEGIN "\t\n\r " RATIO_NUMERATOR_BEGIN; RATIO_NUMERATOR_BEGIN "1..9" RATIO_NUMERATOR; RATIO_NUMERATOR "0..9" RATIO_NUMERATOR; RATIO_NUMERATOR '/' RATIO_DENOMINATOR_BEGIN; RATIO_DENOMINATOR_BEGIN "1..9" RATIO_DENOMINATOR; RATIO_DENOMINATOR "0..9" RATIO_DENOMINATOR; RATIO_DENOMINATOR ')' AND_OR_END; END_LENGTH_UNIT "\t\r\n " END_LENGTH_UNIT; END_LENGTH_UNIT ')' AND_OR_END; EXPRESSION_BEGIN 'p' POINTER_O; EXPRESSION_BEGIN 'h' HEIGHT_OR_HOVER; # pointer POINTER_O 'o' POINTER_I; POINTER_I 'i' POINTER_N; POINTER_N 'n' POINTER_T; POINTER_T 't' POINTER_E; POINTER_E 'e' POINTER_R; POINTER_R 'r' SPACE_OR_COLON|PUSH|POINTER_VALUE_BEGIN; SPACE_OR_COLON ':' POP; SPACE_OR_COLON "\t\n\r " SPACE_OR_COLON; POINTER_VALUE_BEGIN "\t\n\r " POINTER_VALUE_BEGIN; POINTER_VALUE_BEGIN 'n' NONE_O; POINTER_VALUE_BEGIN 'c' COARSE_O; POINTER_VALUE_BEGIN 'f' FINE_I; # fine FINE_I 'i' FINE_N; FINE_N 'n' FINE_E; FINE_E 'e' EXPRESSION_VALUE_END; # coarse COARSE_O 'o' COARSE_A; COARSE_A 'a' COARSE_R; COARSE_R 'r' COARSE_S; COARSE_S 's' COARSE_E; COARSE_E 'e' EXPRESSION_VALUE_END; # none NONE_O 'o' NONE_N; NONE_N 'n' NONE_E; NONE_E 'e' EXPRESSION_VALUE_END; # hover HEIGHT_OR_HOVER 'o' HOVER_V; HOVER_V 'v' HOVER_E; HOVER_E 'e' HOVER_R; HOVER_R 'r' SPACE_OR_COLON|PUSH|HOVER_VALUE_BEGIN; HOVER_VALUE_BEGIN "\t\n\r " HOVER_VALUE_BEGIN; HOVER_VALUE_BEGIN 'n' NONE_O; HOVER_VALUE_BEGIN 'h' HOVER_VALUE_O; HOVER_VALUE_O 'o' HOVER_VALUE_V; HOVER_VALUE_V 'v' HOVER_VALUE_E; HOVER_VALUE_E 'e' HOVER_VALUE_R; HOVER_VALUE_R 'r' EXPRESSION_VALUE_END; EXPRESSION_VALUE_END "\t\n\r " EXPRESSION_VALUE_END; EXPRESSION_VALUE_END ')' AND_OR_END; AND_OR_END "\t\n\r " AND_OR_END; AND_OR_END 'a' AND_N; # Termination EOF. AND_OR_END 0 POP;