diff options
author | Andrey Somov <public.somov@gmail.com> | 2016-02-06 22:55:01 +0100 |
---|---|---|
committer | Andrey Somov <public.somov@gmail.com> | 2016-02-06 22:55:01 +0100 |
commit | 6abec029b7fa61878b80a204d8dbe876bb1d0e40 (patch) | |
tree | 814a2204af2550ebc0800e7f26c36733042c5dc5 | |
parent | 0d45790da742a74840302744e8bbe9ad4d93af90 (diff) | |
download | snakeyaml-6abec029b7fa61878b80a204d8dbe876bb1d0e40.tar.gz |
Remove Ragel machine implementation
3 files changed, 0 insertions, 526 deletions
diff --git a/src/main/java/org/yaml/snakeyaml/resolver/RagelMachine.rl b/src/main/java/org/yaml/snakeyaml/resolver/RagelMachine.rl deleted file mode 100644 index 4bc839e7..00000000 --- a/src/main/java/org/yaml/snakeyaml/resolver/RagelMachine.rl +++ /dev/null @@ -1,78 +0,0 @@ -package org.yaml.snakeyaml.resolver;
-//Source for Ragel 6.3
-
-/**
- * Generated by Ragel 6.3 (http://www.complang.org/ragel/)
- * @see <a href="http://www.complang.org/ragel/"></a>
- */
-public class RagelMachine {
- %%{
- machine snakeyaml;
- action bool_tag { tag = "tag:yaml.org,2002:bool"; }
- action merge_tag { tag = "tag:yaml.org,2002:merge"; }
- action null_tag { tag = "tag:yaml.org,2002:null"; }
- action value_tag { tag = "tag:yaml.org,2002:value"; }
- action int_tag { tag = "tag:yaml.org,2002:int"; }
- action float_tag { tag = "tag:yaml.org,2002:float"; }
- action timestamp_tag { tag = "tag:yaml.org,2002:timestamp"; }
-
- Bool = ("yes" | "Yes" | "YES" | "no" | "No" | "NO" |
- "true" | "True" | "TRUE" | "false" | "False" | "FALSE" |
- "on" | "On" | "ON" | "off" | "Off" | "OFF") %/bool_tag;
- Merge = "<<" %/merge_tag;
- Value = "=" %/value_tag;
- Null = ("~" | "null" | "Null" | "NULL" | " ") %/null_tag;
-
- sign = "-" | "+";
- digit2 = digit | "_";
- binaryInt = "0b" [0-1_]+;
- octalInt = "0" [0-7_]+;
- decimalInt = "0" | [1-9]digit2* (":" [0-5]? digit)*;
- hexaInt = "0x" [0-9a-fA-F_]+;
- Int = sign? (binaryInt | octalInt | decimalInt | hexaInt) %/int_tag;
-
- exp = [eE] sign digit+;
- Float = ((sign? ((digit+ digit2* "." digit2* exp?)
- | ((digit+ digit2*)? "." digit+ digit2* exp?)
- | (digit+ (":" [0-5]? digit)+ "." digit*)
- | "." ("inf" | "Inf" | "INF")))
- | ("." ("nan" | "NaN" | "NAN"))) %/float_tag;
-
- TimestampShort = digit{4} ("-" digit{2}){2} %/timestamp_tag;
- fract = "." digit*;
- zone = [ \t]* ("Z" | (sign digit{1,2} ( ":" digit{2} )?));
- Timestamp = digit{4} ("-" digit{1,2}){2} ([Tt] | [ \t]+)
- digit{1,2} ":" digit{2} ":" digit{2} fract? zone? %/timestamp_tag;
-
- Scalar = Bool | Null | Int | Float | TimestampShort | Merge | Value | Timestamp;
- main := Scalar;
- write data nofinal;
- }%%
-
- public String scan(String scalar) {
- if (scalar == null) {
- throw new NullPointerException("Scalar must be provided.");
- }
- String tag = null;
- int cs = 0;
- int p = 0;
- int pe = scalar.length();
- int eof = pe;
- char[] data;
- if (pe == 0) {
- // NULL value
- data = new char[] { '~' };
- pe = 1;
- eof = 1;
- } else {
- data = scalar.toCharArray();
- }
- %%{
- # Initialize and execute.
- write init;
- write exec;
- }%%
-
- return tag;
- }
-}
\ No newline at end of file diff --git a/src/test/java/org/yaml/snakeyaml/resolver/RagelMachine.java b/src/test/java/org/yaml/snakeyaml/resolver/RagelMachine.java deleted file mode 100644 index 9495bec0..00000000 --- a/src/test/java/org/yaml/snakeyaml/resolver/RagelMachine.java +++ /dev/null @@ -1,329 +0,0 @@ -/** - * Copyright (c) 2008, http://www.snakeyaml.org - * - * 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. - */ -// line 1 "RagelMachine.rl" -package org.yaml.snakeyaml.resolver; - -//Source for Ragel 6.3 - -/** - * Generated by Ragel 6.3 (http://www.complang.org/ragel/) - * - * @see <a href="http://www.complang.org/ragel/"></a> - */ -public class RagelMachine { - - // line 15 "RagelMachine.java" - private static byte[] init__snakeyaml_actions_0() { - return new byte[] { 0, 1, 0, 1, 1, 1, 2, 1, 3, 1, 4, 1, 5, 1, 6 }; - } - - private static final byte _snakeyaml_actions[] = init__snakeyaml_actions_0(); - - private static short[] init__snakeyaml_key_offsets_0() { - return new short[] { 0, 0, 20, 24, 28, 30, 32, 34, 35, 36, 37, 42, 46, 50, 52, 56, 59, 66, - 70, 74, 80, 82, 83, 84, 85, 87, 90, 92, 98, 102, 105, 106, 108, 110, 111, 113, 115, - 120, 122, 124, 126, 130, 132, 133, 135, 141, 147, 152, 157, 158, 160, 161, 162, - 163, 164, 165, 166, 170, 171, 172, 173, 174, 178, 179, 180, 182, 183, 184, 186, - 187, 188, 189, 191, 193, 194, 195, 195, 200, 202, 202, 211, 218, 224, 227, 234, - 239, 243, 245, 250, 253, 254, 263, 270, 277, 285, 291, 294, 295, 295, 302, 306, - 311, 316, 321, 327, 327, 327 }; - } - - private static final short _snakeyaml_key_offsets[] = init__snakeyaml_key_offsets_0(); - - private static char[] init__snakeyaml_trans_keys_0() { - return new char[] { 32, 43, 45, 46, 48, 60, 61, 70, 78, 79, 84, 89, 102, 110, 111, 116, - 121, 126, 49, 57, 46, 48, 49, 57, 73, 105, 48, 57, 43, 45, 48, 57, 78, 110, 70, - 102, 110, 46, 58, 95, 48, 57, 48, 53, 54, 57, 46, 58, 48, 57, 46, 58, 46, 95, 48, - 57, 95, 48, 49, 95, 48, 57, 65, 70, 97, 102, 48, 53, 54, 57, 48, 53, 54, 57, 73, - 78, 105, 110, 48, 57, 65, 97, 78, 97, 110, 48, 57, 45, 48, 57, 48, 57, 9, 32, 84, - 116, 48, 57, 9, 32, 48, 57, 58, 48, 57, 58, 48, 57, 48, 57, 58, 48, 57, 48, 57, 9, - 32, 43, 45, 90, 48, 57, 48, 57, 48, 57, 9, 32, 84, 116, 48, 57, 45, 48, 57, 9, 32, - 84, 116, 48, 57, 45, 46, 58, 95, 48, 57, 46, 58, 95, 48, 57, 46, 58, 95, 48, 57, - 60, 65, 97, 76, 83, 69, 108, 115, 101, 79, 85, 111, 117, 76, 76, 108, 108, 70, 78, - 102, 110, 70, 102, 82, 114, 85, 117, 69, 101, 83, 115, 97, 111, 117, 102, 110, 114, - 101, 69, 95, 101, 48, 57, 48, 57, 46, 58, 95, 98, 120, 48, 55, 56, 57, 46, 58, 95, - 48, 55, 56, 57, 46, 95, 48, 55, 56, 57, 95, 48, 49, 95, 48, 57, 65, 70, 97, 102, - 46, 58, 95, 48, 57, 46, 58, 48, 57, 46, 58, 46, 58, 95, 48, 57, 58, 48, 57, 58, 46, - 58, 95, 98, 120, 48, 55, 56, 57, 46, 58, 95, 48, 55, 56, 57, 46, 58, 95, 48, 55, - 56, 57, 45, 46, 58, 95, 48, 55, 56, 57, 9, 32, 43, 45, 46, 90, 58, 48, 57, 58, 9, - 32, 43, 45, 90, 48, 57, 9, 32, 84, 116, 46, 58, 95, 48, 57, 46, 58, 95, 48, 57, 46, - 58, 95, 48, 57, 45, 46, 58, 95, 48, 57, 0 }; - } - - private static final char _snakeyaml_trans_keys[] = init__snakeyaml_trans_keys_0(); - - private static byte[] init__snakeyaml_single_lengths_0() { - return new byte[] { 0, 18, 2, 2, 2, 0, 2, 1, 1, 1, 3, 0, 2, 2, 2, 1, 1, 0, 0, 4, 2, 1, 1, - 1, 0, 1, 0, 4, 2, 1, 1, 0, 0, 1, 0, 0, 5, 0, 0, 0, 4, 0, 1, 0, 4, 4, 3, 3, 1, 2, 1, - 1, 1, 1, 1, 1, 4, 1, 1, 1, 1, 4, 1, 1, 2, 1, 1, 2, 1, 1, 1, 2, 2, 1, 1, 0, 3, 0, 0, - 5, 3, 2, 1, 1, 3, 2, 2, 3, 1, 1, 5, 3, 3, 4, 6, 1, 1, 0, 5, 4, 3, 3, 3, 4, 0, 0, 0 }; - } - - private static final byte _snakeyaml_single_lengths[] = init__snakeyaml_single_lengths_0(); - - private static byte[] init__snakeyaml_range_lengths_0() { - return new byte[] { 0, 1, 1, 1, 0, 1, 0, 0, 0, 0, 1, 2, 1, 0, 1, 1, 3, 2, 2, 1, 0, 0, 0, 0, - 1, 1, 1, 1, 1, 1, 0, 1, 1, 0, 1, 1, 0, 1, 1, 1, 0, 1, 0, 1, 1, 1, 1, 1, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 0, 2, - 2, 2, 1, 3, 1, 1, 0, 1, 1, 0, 2, 2, 2, 2, 0, 1, 0, 0, 1, 0, 1, 1, 1, 1, 0, 0, 0 }; - } - - private static final byte _snakeyaml_range_lengths[] = init__snakeyaml_range_lengths_0(); - - private static short[] init__snakeyaml_index_offsets_0() { - return new short[] { 0, 0, 20, 24, 28, 31, 33, 36, 38, 40, 42, 47, 50, 54, 57, 61, 64, 69, - 72, 75, 81, 84, 86, 88, 90, 92, 95, 97, 103, 107, 110, 112, 114, 116, 118, 120, - 122, 128, 130, 132, 134, 139, 141, 143, 145, 151, 157, 162, 167, 169, 172, 174, - 176, 178, 180, 182, 184, 189, 191, 193, 195, 197, 202, 204, 206, 209, 211, 213, - 216, 218, 220, 222, 225, 228, 230, 232, 233, 238, 240, 241, 249, 255, 260, 263, - 268, 273, 277, 280, 285, 288, 290, 298, 304, 310, 317, 324, 327, 329, 330, 337, - 342, 347, 352, 357, 363, 364, 365 }; - } - - private static final short _snakeyaml_index_offsets[] = init__snakeyaml_index_offsets_0(); - - private static byte[] init__snakeyaml_indicies_0() { - return new byte[] { 0, 2, 2, 3, 4, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 0, 5, 1, 18, - 19, 20, 1, 22, 23, 21, 1, 24, 24, 1, 25, 1, 26, 27, 1, 28, 1, 28, 1, 27, 1, 21, 30, - 31, 29, 1, 32, 33, 1, 25, 30, 33, 1, 25, 30, 1, 21, 31, 31, 1, 34, 34, 1, 35, 35, - 35, 35, 1, 36, 37, 1, 38, 39, 1, 22, 40, 23, 41, 21, 1, 42, 42, 1, 28, 1, 43, 1, - 28, 1, 44, 1, 45, 46, 1, 47, 1, 48, 48, 50, 50, 49, 1, 48, 48, 51, 1, 53, 52, 1, - 53, 1, 54, 1, 55, 1, 56, 1, 57, 1, 58, 1, 59, 59, 60, 60, 61, 1, 62, 1, 63, 1, 61, - 1, 48, 48, 50, 50, 1, 51, 1, 64, 1, 65, 1, 48, 48, 50, 50, 66, 1, 67, 21, 30, 31, - 29, 1, 21, 30, 31, 68, 1, 21, 30, 31, 69, 1, 70, 1, 71, 72, 1, 73, 1, 74, 1, 75, 1, - 76, 1, 77, 1, 75, 1, 75, 78, 75, 79, 1, 80, 1, 0, 1, 81, 1, 0, 1, 82, 75, 83, 75, - 1, 75, 1, 75, 1, 84, 85, 1, 74, 1, 77, 1, 86, 87, 1, 75, 1, 75, 1, 72, 1, 75, 79, - 1, 83, 75, 1, 85, 1, 87, 1, 1, 88, 21, 88, 21, 1, 25, 1, 1, 21, 30, 90, 91, 92, 89, - 29, 1, 21, 30, 90, 89, 29, 1, 21, 90, 90, 31, 1, 34, 34, 1, 35, 35, 35, 35, 1, 21, - 93, 94, 20, 1, 25, 93, 37, 1, 25, 93, 1, 21, 95, 94, 94, 1, 95, 39, 1, 95, 1, 21, - 30, 90, 91, 92, 96, 97, 1, 21, 30, 90, 98, 69, 1, 21, 30, 90, 99, 68, 1, 67, 21, - 30, 90, 89, 29, 1, 59, 59, 60, 60, 100, 61, 1, 102, 101, 1, 102, 1, 1, 59, 59, 60, - 60, 61, 100, 1, 48, 48, 50, 50, 1, 21, 93, 94, 103, 1, 21, 93, 94, 104, 1, 21, 93, - 94, 105, 1, 67, 21, 93, 94, 20, 1, 1, 1, 1, 0 }; - } - - private static final byte _snakeyaml_indicies[] = init__snakeyaml_indicies_0(); - - private static byte[] init__snakeyaml_trans_targs_0() { - return new byte[] { 75, 0, 2, 19, 90, 100, 48, 105, 49, 56, 61, 64, 67, 70, 71, 72, 73, 74, - 3, 79, 84, 76, 6, 9, 5, 77, 7, 8, 78, 10, 11, 14, 12, 13, 82, 83, 85, 86, 88, 89, - 20, 22, 21, 23, 25, 26, 42, 27, 28, 40, 41, 29, 30, 31, 32, 33, 34, 35, 94, 36, 37, - 97, 95, 39, 43, 44, 99, 24, 45, 46, 104, 50, 53, 51, 52, 106, 54, 55, 57, 59, 58, - 60, 62, 63, 65, 66, 68, 69, 4, 80, 81, 15, 16, 17, 87, 18, 91, 47, 92, 93, 98, 96, - 38, 101, 102, 103 }; - } - - private static final byte _snakeyaml_trans_targs[] = init__snakeyaml_trans_targs_0(); - - // private static byte[] init__snakeyaml_trans_actions_0() { - // return new byte[] { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - // 0, 0, 0, 0, 0, 0, - // 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - // 0, 0, 0, 0, - // 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - // 0, 0, 0, 0, - // 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - // 0, 0 }; - // } - - // private static final byte _snakeyaml_trans_actions[] = - // init__snakeyaml_trans_actions_0(); - - private static byte[] init__snakeyaml_eof_actions_0() { - return new byte[] { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 5, 11, 11, 11, - 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 13, 13, 13, 13, 13, 13, 9, 9, 9, 9, 3, - 7, 1 }; - } - - private static final byte _snakeyaml_eof_actions[] = init__snakeyaml_eof_actions_0(); - - static final int snakeyaml_start = 1; - static final int snakeyaml_error = 0; - - static final int snakeyaml_en_main = 1; - - // line 53 "RagelMachine.rl" - - public String scan(String scalar) { - if (scalar == null) { - throw new NullPointerException("Scalar must be provided."); - } - String tag = null; - int cs = 0; - int p = 0; - int pe = scalar.length(); - int eof = pe; - char[] data; - if (pe == 0) { - // NULL value - data = new char[] { '~' }; - pe = 1; - eof = 1; - } else { - data = scalar.toCharArray(); - } - - // line 257 "RagelMachine.java" - { - cs = snakeyaml_start; - } - - // line 262 "RagelMachine.java" - { - int _klen; - int _trans = 0; - int _keys; - int _goto_targ = 0; - - _goto: while (true) { - switch (_goto_targ) { - case 0: - if (p == pe) { - _goto_targ = 4; - continue _goto; - } - if (cs == 0) { - _goto_targ = 5; - continue _goto; - } - case 1: - _match: do { - _keys = _snakeyaml_key_offsets[cs]; - _trans = _snakeyaml_index_offsets[cs]; - _klen = _snakeyaml_single_lengths[cs]; - if (_klen > 0) { - int _lower = _keys; - int _mid; - int _upper = _keys + _klen - 1; - while (true) { - if (_upper < _lower) - break; - - _mid = _lower + ((_upper - _lower) >> 1); - if (data[p] < _snakeyaml_trans_keys[_mid]) - _upper = _mid - 1; - else if (data[p] > _snakeyaml_trans_keys[_mid]) - _lower = _mid + 1; - else { - _trans += (_mid - _keys); - break _match; - } - } - _keys += _klen; - _trans += _klen; - } - - _klen = _snakeyaml_range_lengths[cs]; - if (_klen > 0) { - int _lower = _keys; - int _mid; - int _upper = _keys + (_klen << 1) - 2; - while (true) { - if (_upper < _lower) - break; - - _mid = _lower + (((_upper - _lower) >> 1) & ~1); - if (data[p] < _snakeyaml_trans_keys[_mid]) - _upper = _mid - 2; - else if (data[p] > _snakeyaml_trans_keys[_mid + 1]) - _lower = _mid + 2; - else { - _trans += ((_mid - _keys) >> 1); - break _match; - } - } - _trans += _klen; - } - } while (false); - - _trans = _snakeyaml_indicies[_trans]; - cs = _snakeyaml_trans_targs[_trans]; - - case 2: - if (cs == 0) { - _goto_targ = 5; - continue _goto; - } - if (++p != pe) { - _goto_targ = 1; - continue _goto; - } - case 4: - if (p == eof) { - int __acts = _snakeyaml_eof_actions[cs]; - int __nacts = (int) _snakeyaml_actions[__acts++]; - while (__nacts-- > 0) { - switch (_snakeyaml_actions[__acts++]) { - case 0: - // line 14 "RagelMachine.rl" - { - tag = "tag:yaml.org,2002:bool"; - } - break; - case 1: - // line 15 "RagelMachine.rl" - { - tag = "tag:yaml.org,2002:merge"; - } - break; - case 2: - // line 16 "RagelMachine.rl" - { - tag = "tag:yaml.org,2002:null"; - } - break; - case 3: - // line 17 "RagelMachine.rl" - { - tag = "tag:yaml.org,2002:value"; - } - break; - case 4: - // line 18 "RagelMachine.rl" - { - tag = "tag:yaml.org,2002:int"; - } - break; - case 5: - // line 19 "RagelMachine.rl" - { - tag = "tag:yaml.org,2002:float"; - } - break; - case 6: - // line 20 "RagelMachine.rl" - { - tag = "tag:yaml.org,2002:timestamp"; - } - break; - // line 377 "RagelMachine.java" - } - } - } - - case 5: - } - break; - } - } - // line 77 "RagelMachine.rl" - - return tag; - } -}
\ No newline at end of file diff --git a/src/test/java/org/yaml/snakeyaml/resolver/RagelMachineTest.java b/src/test/java/org/yaml/snakeyaml/resolver/RagelMachineTest.java deleted file mode 100644 index f7adc41e..00000000 --- a/src/test/java/org/yaml/snakeyaml/resolver/RagelMachineTest.java +++ /dev/null @@ -1,119 +0,0 @@ -/** - * Copyright (c) 2008, http://www.snakeyaml.org - * - * 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. - */ -package org.yaml.snakeyaml.resolver; - -import junit.framework.TestCase; - -public class RagelMachineTest extends TestCase { - private RagelMachine machine = new RagelMachine(); - - public void testScan() { - assertNull(machine.scan("abc")); - } - - public void testNullPointerException() { - try { - machine.scan(null); - fail("null must not be accepted."); - } catch (NullPointerException e) { - assertEquals("Scalar must be provided.", e.getMessage()); - } - } - - public void testScanBoolean() { - assertEquals("tag:yaml.org,2002:bool", machine.scan("true")); - assertEquals("tag:yaml.org,2002:bool", machine.scan("True")); - assertEquals("tag:yaml.org,2002:bool", machine.scan("TRUE")); - assertEquals("tag:yaml.org,2002:bool", machine.scan("false")); - assertEquals("tag:yaml.org,2002:bool", machine.scan("False")); - assertEquals("tag:yaml.org,2002:bool", machine.scan("FALSE")); - assertEquals("tag:yaml.org,2002:bool", machine.scan("on")); - assertEquals("tag:yaml.org,2002:bool", machine.scan("ON")); - assertEquals("tag:yaml.org,2002:bool", machine.scan("On")); - assertEquals("tag:yaml.org,2002:bool", machine.scan("off")); - assertEquals("tag:yaml.org,2002:bool", machine.scan("Off")); - assertEquals("tag:yaml.org,2002:bool", machine.scan("OFF")); - assertEquals("tag:yaml.org,2002:bool", machine.scan("on")); - assertEquals("tag:yaml.org,2002:bool", machine.scan("ON")); - assertEquals("tag:yaml.org,2002:bool", machine.scan("On")); - assertEquals("tag:yaml.org,2002:bool", machine.scan("off")); - assertEquals("tag:yaml.org,2002:bool", machine.scan("Off")); - assertEquals("tag:yaml.org,2002:bool", machine.scan("OFF")); - } - - public void testScanNull() { - assertEquals("tag:yaml.org,2002:null", machine.scan("null")); - assertEquals("tag:yaml.org,2002:null", machine.scan("Null")); - assertEquals("tag:yaml.org,2002:null", machine.scan("NULL")); - assertEquals("tag:yaml.org,2002:null", machine.scan("~")); - assertEquals("tag:yaml.org,2002:null", machine.scan(" ")); - assertEquals("tag:yaml.org,2002:null", machine.scan("")); - } - - public void testScanMerge() { - assertEquals("tag:yaml.org,2002:merge", machine.scan("<<")); - } - - public void testScanValue() { - assertEquals("tag:yaml.org,2002:value", machine.scan("=")); - } - - public void testScanInt() { - assertEquals("tag:yaml.org,2002:int", machine.scan("0")); - assertEquals("tag:yaml.org,2002:int", machine.scan("1")); - assertEquals("tag:yaml.org,2002:int", machine.scan("-0")); - assertEquals("tag:yaml.org,2002:int", machine.scan("-9")); - assertEquals("tag:yaml.org,2002:int", machine.scan("0b0011")); - assertEquals("tag:yaml.org,2002:int", machine.scan("0x12ef")); - assertEquals("tag:yaml.org,2002:int", machine.scan("0123")); - assertEquals("tag:yaml.org,2002:int", machine.scan("1_000")); - assertEquals("tag:yaml.org,2002:int", machine.scan("1_000_000")); - assertEquals("tag:yaml.org,2002:int", machine.scan("+0")); - assertEquals("tag:yaml.org,2002:int", machine.scan("+10")); - assertEquals("tag:yaml.org,2002:int", machine.scan("1__000")); - assertEquals("tag:yaml.org,2002:int", machine.scan("24:12:34")); - assertEquals("tag:yaml.org,2002:int", machine.scan("240:12:34")); - } - - public void testScanFloat() { - assertEquals("tag:yaml.org,2002:float", machine.scan("1.0")); - assertEquals("tag:yaml.org,2002:float", machine.scan("-0.0")); - assertEquals("tag:yaml.org,2002:float", machine.scan("+2.2310")); - assertEquals("tag:yaml.org,2002:float", machine.scan("1.0e+12")); - assertEquals("tag:yaml.org,2002:float", machine.scan("1.345e-3")); - assertEquals("tag:yaml.org,2002:float", machine.scan("190:20:30.15")); - assertEquals("tag:yaml.org,2002:float", machine.scan("-.inf")); - assertEquals("tag:yaml.org,2002:float", machine.scan("+.INF")); - assertEquals("tag:yaml.org,2002:float", machine.scan(".Inf")); - assertEquals("tag:yaml.org,2002:float", machine.scan(".nan")); - assertEquals("tag:yaml.org,2002:float", machine.scan(".NaN")); - assertEquals("tag:yaml.org,2002:float", machine.scan(".NAN")); - assertEquals("tag:yaml.org,2002:float", machine.scan("1_000.5")); - assertEquals("tag:yaml.org,2002:float", machine.scan("1.023_456")); - assertEquals("tag:yaml.org,2002:float", machine.scan("-1_123.45")); - assertEquals("tag:yaml.org,2002:float", machine.scan(".5")); - assertEquals("tag:yaml.org,2002:float", machine.scan("1.E+1")); - assertNull(machine.scan("0x1,1"), machine.scan("0x1,1")); - } - - public void testScanTimestamp() { - assertEquals("tag:yaml.org,2002:timestamp", machine.scan("2009-02-28")); - assertEquals("tag:yaml.org,2002:timestamp", machine.scan("2001-12-15T02:59:43.1Z")); - assertEquals("tag:yaml.org,2002:timestamp", machine.scan("2001-12-14t21:59:43.10-05:00")); - assertEquals("tag:yaml.org,2002:timestamp", machine.scan("2001-12-14 21:59:43.10 -5")); - assertEquals("tag:yaml.org,2002:timestamp", machine.scan("2001-12-15 2:59:43.10")); - } -} |