[18425] | 1 | #
|
---|
| 2 | # Constants used throughout the library
|
---|
| 3 | #
|
---|
| 4 | module YAML
|
---|
| 5 |
|
---|
| 6 | #
|
---|
| 7 | # Constants
|
---|
| 8 | #
|
---|
| 9 | VERSION = '0.60'
|
---|
| 10 | SUPPORTED_YAML_VERSIONS = ['1.0']
|
---|
| 11 |
|
---|
| 12 | #
|
---|
| 13 | # Parser tokens
|
---|
| 14 | #
|
---|
| 15 | WORD_CHAR = 'A-Za-z0-9'
|
---|
| 16 | PRINTABLE_CHAR = '-_A-Za-z0-9!?/()$\'". '
|
---|
| 17 | NOT_PLAIN_CHAR = '\x7f\x0-\x1f\x80-\x9f'
|
---|
| 18 | ESCAPE_CHAR = '[\\x00-\\x09\\x0b-\\x1f]'
|
---|
| 19 | INDICATOR_CHAR = '*&!|\\\\^@%{}[]='
|
---|
| 20 | SPACE_INDICATORS = '-#:,?'
|
---|
| 21 | RESTRICTED_INDICATORS = '#:,}]'
|
---|
| 22 | DNS_COMP_RE = "\\w(?:[-\\w]*\\w)?"
|
---|
| 23 | DNS_NAME_RE = "(?:(?:#{DNS_COMP_RE}\\.)+#{DNS_COMP_RE}|#{DNS_COMP_RE})"
|
---|
| 24 | ESCAPES = %w{\x00 \x01 \x02 \x03 \x04 \x05 \x06 \a
|
---|
| 25 | \x08 \t \n \v \f \r \x0e \x0f
|
---|
| 26 | \x10 \x11 \x12 \x13 \x14 \x15 \x16 \x17
|
---|
| 27 | \x18 \x19 \x1a \e \x1c \x1d \x1e \x1f
|
---|
| 28 | }
|
---|
| 29 | UNESCAPES = {
|
---|
| 30 | 'a' => "\x07", 'b' => "\x08", 't' => "\x09",
|
---|
| 31 | 'n' => "\x0a", 'v' => "\x0b", 'f' => "\x0c",
|
---|
| 32 | 'r' => "\x0d", 'e' => "\x1b", '\\' => '\\',
|
---|
| 33 | }
|
---|
| 34 |
|
---|
| 35 | #
|
---|
| 36 | # Default settings
|
---|
| 37 | #
|
---|
| 38 | DEFAULTS = {
|
---|
| 39 | :Indent => 2, :UseHeader => false, :UseVersion => false, :Version => '1.0',
|
---|
| 40 | :SortKeys => false, :AnchorFormat => 'id%03d', :ExplicitTypes => false,
|
---|
| 41 | :WidthType => 'absolute', :BestWidth => 80,
|
---|
| 42 | :UseBlock => false, :UseFold => false, :Encoding => :None
|
---|
| 43 | }
|
---|
| 44 |
|
---|
| 45 | end
|
---|