schemacop 2.4.5 → 3.0.0.rc2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
 - data/.gitignore +3 -0
 - data/.rubocop.yml +25 -1
 - data/.travis.yml +3 -1
 - data/CHANGELOG.md +32 -1
 - data/README.md +53 -710
 - data/README_V2.md +775 -0
 - data/README_V3.md +1195 -0
 - data/Rakefile +8 -12
 - data/VERSION +1 -1
 - data/lib/schemacop.rb +35 -36
 - data/lib/schemacop/base_schema.rb +37 -0
 - data/lib/schemacop/railtie.rb +10 -0
 - data/lib/schemacop/schema.rb +1 -60
 - data/lib/schemacop/schema2.rb +22 -0
 - data/lib/schemacop/schema3.rb +21 -0
 - data/lib/schemacop/scoped_env.rb +25 -13
 - data/lib/schemacop/v2.rb +26 -0
 - data/lib/schemacop/{caster.rb → v2/caster.rb} +16 -2
 - data/lib/schemacop/{collector.rb → v2/collector.rb} +5 -2
 - data/lib/schemacop/{dupper.rb → v2/dupper.rb} +1 -1
 - data/lib/schemacop/{field_node.rb → v2/field_node.rb} +4 -3
 - data/lib/schemacop/v2/node.rb +142 -0
 - data/lib/schemacop/{node_resolver.rb → v2/node_resolver.rb} +1 -1
 - data/lib/schemacop/v2/node_supporting_field.rb +70 -0
 - data/lib/schemacop/{node_supporting_type.rb → v2/node_supporting_type.rb} +14 -11
 - data/lib/schemacop/{node_with_block.rb → v2/node_with_block.rb} +3 -2
 - data/lib/schemacop/v2/root_node.rb +6 -0
 - data/lib/schemacop/v2/validator/array_validator.rb +32 -0
 - data/lib/schemacop/{validator → v2/validator}/boolean_validator.rb +1 -1
 - data/lib/schemacop/v2/validator/float_validator.rb +7 -0
 - data/lib/schemacop/v2/validator/hash_validator.rb +37 -0
 - data/lib/schemacop/v2/validator/integer_validator.rb +7 -0
 - data/lib/schemacop/{validator → v2/validator}/nil_validator.rb +1 -1
 - data/lib/schemacop/v2/validator/number_validator.rb +21 -0
 - data/lib/schemacop/v2/validator/object_validator.rb +29 -0
 - data/lib/schemacop/v2/validator/string_validator.rb +39 -0
 - data/lib/schemacop/{validator → v2/validator}/symbol_validator.rb +1 -1
 - data/lib/schemacop/v3.rb +45 -0
 - data/lib/schemacop/v3/all_of_node.rb +27 -0
 - data/lib/schemacop/v3/any_of_node.rb +28 -0
 - data/lib/schemacop/v3/array_node.rb +218 -0
 - data/lib/schemacop/v3/boolean_node.rb +16 -0
 - data/lib/schemacop/v3/combination_node.rb +45 -0
 - data/lib/schemacop/v3/context.rb +17 -0
 - data/lib/schemacop/v3/dsl_scope.rb +46 -0
 - data/lib/schemacop/v3/global_context.rb +114 -0
 - data/lib/schemacop/v3/hash_node.rb +256 -0
 - data/lib/schemacop/v3/integer_node.rb +13 -0
 - data/lib/schemacop/v3/is_not_node.rb +32 -0
 - data/lib/schemacop/v3/node.rb +215 -0
 - data/lib/schemacop/v3/node_registry.rb +49 -0
 - data/lib/schemacop/v3/number_node.rb +18 -0
 - data/lib/schemacop/v3/numeric_node.rb +76 -0
 - data/lib/schemacop/v3/object_node.rb +40 -0
 - data/lib/schemacop/v3/one_of_node.rb +28 -0
 - data/lib/schemacop/v3/reference_node.rb +49 -0
 - data/lib/schemacop/v3/result.rb +58 -0
 - data/lib/schemacop/v3/string_node.rb +124 -0
 - data/lib/schemacop/v3/symbol_node.rb +13 -0
 - data/schemacop.gemspec +24 -27
 - data/test/lib/test_helper.rb +152 -0
 - data/test/schemas/nested/group.rb +6 -0
 - data/test/schemas/user.rb +7 -0
 - data/test/unit/schemacop/v2/casting_test.rb +120 -0
 - data/test/unit/schemacop/v2/collector_test.rb +47 -0
 - data/test/unit/schemacop/v2/custom_check_test.rb +95 -0
 - data/test/unit/schemacop/v2/custom_if_test.rb +97 -0
 - data/test/unit/schemacop/v2/defaults_test.rb +95 -0
 - data/test/unit/schemacop/v2/empty_test.rb +16 -0
 - data/test/unit/schemacop/v2/nil_dis_allow_test.rb +43 -0
 - data/test/unit/schemacop/v2/node_resolver_test.rb +28 -0
 - data/test/unit/schemacop/v2/short_forms_test.rb +351 -0
 - data/test/unit/schemacop/v2/types_test.rb +88 -0
 - data/test/unit/schemacop/v2/validator_array_test.rb +99 -0
 - data/test/unit/schemacop/v2/validator_boolean_test.rb +17 -0
 - data/test/unit/schemacop/v2/validator_float_test.rb +59 -0
 - data/test/unit/schemacop/v2/validator_hash_test.rb +95 -0
 - data/test/unit/schemacop/v2/validator_integer_test.rb +48 -0
 - data/test/unit/schemacop/v2/validator_nil_test.rb +15 -0
 - data/test/unit/schemacop/v2/validator_number_test.rb +62 -0
 - data/test/unit/schemacop/v2/validator_object_test.rb +141 -0
 - data/test/unit/schemacop/v2/validator_string_test.rb +78 -0
 - data/test/unit/schemacop/v2/validator_symbol_test.rb +18 -0
 - data/test/unit/schemacop/v3/all_of_node_test.rb +198 -0
 - data/test/unit/schemacop/v3/any_of_node_test.rb +218 -0
 - data/test/unit/schemacop/v3/array_node_test.rb +815 -0
 - data/test/unit/schemacop/v3/boolean_node_test.rb +126 -0
 - data/test/unit/schemacop/v3/global_context_test.rb +164 -0
 - data/test/unit/schemacop/v3/hash_node_test.rb +884 -0
 - data/test/unit/schemacop/v3/integer_node_test.rb +323 -0
 - data/test/unit/schemacop/v3/is_not_node_test.rb +173 -0
 - data/test/unit/schemacop/v3/node_test.rb +148 -0
 - data/test/unit/schemacop/v3/number_node_test.rb +292 -0
 - data/test/unit/schemacop/v3/object_node_test.rb +170 -0
 - data/test/unit/schemacop/v3/one_of_node_test.rb +187 -0
 - data/test/unit/schemacop/v3/reference_node_test.rb +351 -0
 - data/test/unit/schemacop/v3/string_node_test.rb +334 -0
 - data/test/unit/schemacop/v3/symbol_node_test.rb +75 -0
 - metadata +152 -145
 - data/doc/Schemacop.html +0 -146
 - data/doc/Schemacop/ArrayValidator.html +0 -329
 - data/doc/Schemacop/BooleanValidator.html +0 -145
 - data/doc/Schemacop/Caster.html +0 -379
 - data/doc/Schemacop/Collector.html +0 -787
 - data/doc/Schemacop/Dupper.html +0 -214
 - data/doc/Schemacop/Exceptions.html +0 -115
 - data/doc/Schemacop/Exceptions/InvalidSchemaError.html +0 -124
 - data/doc/Schemacop/Exceptions/ValidationError.html +0 -124
 - data/doc/Schemacop/FieldNode.html +0 -421
 - data/doc/Schemacop/FloatValidator.html +0 -158
 - data/doc/Schemacop/HashValidator.html +0 -293
 - data/doc/Schemacop/IntegerValidator.html +0 -158
 - data/doc/Schemacop/NilValidator.html +0 -145
 - data/doc/Schemacop/Node.html +0 -1438
 - data/doc/Schemacop/NodeResolver.html +0 -258
 - data/doc/Schemacop/NodeSupportingField.html +0 -590
 - data/doc/Schemacop/NodeSupportingType.html +0 -612
 - data/doc/Schemacop/NodeWithBlock.html +0 -289
 - data/doc/Schemacop/NumberValidator.html +0 -232
 - data/doc/Schemacop/ObjectValidator.html +0 -298
 - data/doc/Schemacop/RootNode.html +0 -171
 - data/doc/Schemacop/Schema.html +0 -699
 - data/doc/Schemacop/StringValidator.html +0 -295
 - data/doc/Schemacop/SymbolValidator.html +0 -145
 - data/doc/ScopedEnv.html +0 -351
 - data/doc/_index.html +0 -379
 - data/doc/class_list.html +0 -51
 - data/doc/css/common.css +0 -1
 - data/doc/css/full_list.css +0 -58
 - data/doc/css/style.css +0 -496
 - data/doc/file.README.html +0 -833
 - data/doc/file_list.html +0 -56
 - data/doc/frames.html +0 -17
 - data/doc/index.html +0 -833
 - data/doc/inheritance.graphml +0 -524
 - data/doc/inheritance.pdf +0 -825
 - data/doc/js/app.js +0 -303
 - data/doc/js/full_list.js +0 -216
 - data/doc/js/jquery.js +0 -4
 - data/doc/method_list.html +0 -587
 - data/doc/top-level-namespace.html +0 -112
 - data/lib/schemacop/node.rb +0 -139
 - data/lib/schemacop/node_supporting_field.rb +0 -58
 - data/lib/schemacop/root_node.rb +0 -4
 - data/lib/schemacop/validator/array_validator.rb +0 -30
 - data/lib/schemacop/validator/float_validator.rb +0 -5
 - data/lib/schemacop/validator/hash_validator.rb +0 -35
 - data/lib/schemacop/validator/integer_validator.rb +0 -5
 - data/lib/schemacop/validator/number_validator.rb +0 -19
 - data/lib/schemacop/validator/object_validator.rb +0 -27
 - data/lib/schemacop/validator/string_validator.rb +0 -37
 - data/test/casting_test.rb +0 -90
 - data/test/collector_test.rb +0 -45
 - data/test/custom_check_test.rb +0 -93
 - data/test/custom_if_test.rb +0 -95
 - data/test/defaults_test.rb +0 -93
 - data/test/empty_test.rb +0 -14
 - data/test/nil_dis_allow_test.rb +0 -41
 - data/test/node_resolver_test.rb +0 -26
 - data/test/short_forms_test.rb +0 -349
 - data/test/test_helper.rb +0 -13
 - data/test/types_test.rb +0 -84
 - data/test/validator_array_test.rb +0 -97
 - data/test/validator_boolean_test.rb +0 -15
 - data/test/validator_float_test.rb +0 -57
 - data/test/validator_hash_test.rb +0 -93
 - data/test/validator_integer_test.rb +0 -46
 - data/test/validator_nil_test.rb +0 -13
 - data/test/validator_number_test.rb +0 -60
 - data/test/validator_object_test.rb +0 -139
 - data/test/validator_string_test.rb +0 -76
 - data/test/validator_symbol_test.rb +0 -16
 
    
        data/doc/css/style.css
    DELETED
    
    | 
         @@ -1,496 +0,0 @@ 
     | 
|
| 
       1 
     | 
    
         
            -
            html {
         
     | 
| 
       2 
     | 
    
         
            -
              width: 100%;
         
     | 
| 
       3 
     | 
    
         
            -
              height: 100%;
         
     | 
| 
       4 
     | 
    
         
            -
            }
         
     | 
| 
       5 
     | 
    
         
            -
            body {
         
     | 
| 
       6 
     | 
    
         
            -
              font-family: "Lucida Sans", "Lucida Grande", Verdana, Arial, sans-serif;
         
     | 
| 
       7 
     | 
    
         
            -
              font-size: 13px;
         
     | 
| 
       8 
     | 
    
         
            -
              width: 100%;
         
     | 
| 
       9 
     | 
    
         
            -
              margin: 0;
         
     | 
| 
       10 
     | 
    
         
            -
              padding: 0;
         
     | 
| 
       11 
     | 
    
         
            -
              display: flex;
         
     | 
| 
       12 
     | 
    
         
            -
              display: -webkit-flex;
         
     | 
| 
       13 
     | 
    
         
            -
              display: -ms-flexbox;
         
     | 
| 
       14 
     | 
    
         
            -
            }
         
     | 
| 
       15 
     | 
    
         
            -
             
     | 
| 
       16 
     | 
    
         
            -
            #nav {
         
     | 
| 
       17 
     | 
    
         
            -
              position: relative;
         
     | 
| 
       18 
     | 
    
         
            -
              width: 100%;
         
     | 
| 
       19 
     | 
    
         
            -
              height: 100%;
         
     | 
| 
       20 
     | 
    
         
            -
              border: 0;
         
     | 
| 
       21 
     | 
    
         
            -
              border-right: 1px dotted #eee;
         
     | 
| 
       22 
     | 
    
         
            -
              overflow: auto;
         
     | 
| 
       23 
     | 
    
         
            -
            }
         
     | 
| 
       24 
     | 
    
         
            -
            .nav_wrap {
         
     | 
| 
       25 
     | 
    
         
            -
              margin: 0;
         
     | 
| 
       26 
     | 
    
         
            -
              padding: 0;
         
     | 
| 
       27 
     | 
    
         
            -
              width: 20%;
         
     | 
| 
       28 
     | 
    
         
            -
              height: 100%;
         
     | 
| 
       29 
     | 
    
         
            -
              position: relative;
         
     | 
| 
       30 
     | 
    
         
            -
              display: flex;
         
     | 
| 
       31 
     | 
    
         
            -
              display: -webkit-flex;
         
     | 
| 
       32 
     | 
    
         
            -
              display: -ms-flexbox;
         
     | 
| 
       33 
     | 
    
         
            -
              flex-shrink: 0;
         
     | 
| 
       34 
     | 
    
         
            -
              -webkit-flex-shrink: 0;
         
     | 
| 
       35 
     | 
    
         
            -
              -ms-flex: 1 0;
         
     | 
| 
       36 
     | 
    
         
            -
            }
         
     | 
| 
       37 
     | 
    
         
            -
            #resizer {
         
     | 
| 
       38 
     | 
    
         
            -
              position: absolute;
         
     | 
| 
       39 
     | 
    
         
            -
              right: -5px;
         
     | 
| 
       40 
     | 
    
         
            -
              top: 0;
         
     | 
| 
       41 
     | 
    
         
            -
              width: 10px;
         
     | 
| 
       42 
     | 
    
         
            -
              height: 100%;
         
     | 
| 
       43 
     | 
    
         
            -
              cursor: col-resize;
         
     | 
| 
       44 
     | 
    
         
            -
              z-index: 9999;
         
     | 
| 
       45 
     | 
    
         
            -
            }
         
     | 
| 
       46 
     | 
    
         
            -
            #main {
         
     | 
| 
       47 
     | 
    
         
            -
              flex: 5 1;
         
     | 
| 
       48 
     | 
    
         
            -
              -webkit-flex: 5 1;
         
     | 
| 
       49 
     | 
    
         
            -
              -ms-flex: 5 1;
         
     | 
| 
       50 
     | 
    
         
            -
              outline: none;
         
     | 
| 
       51 
     | 
    
         
            -
              position: relative;
         
     | 
| 
       52 
     | 
    
         
            -
              background: #fff;
         
     | 
| 
       53 
     | 
    
         
            -
              padding: 1.2em;
         
     | 
| 
       54 
     | 
    
         
            -
              padding-top: 0.2em;
         
     | 
| 
       55 
     | 
    
         
            -
            }
         
     | 
| 
       56 
     | 
    
         
            -
             
     | 
| 
       57 
     | 
    
         
            -
            @media (max-width: 920px) {
         
     | 
| 
       58 
     | 
    
         
            -
              .nav_wrap { width: 100%; top: 0; right: 0; overflow: visible; position: absolute; }
         
     | 
| 
       59 
     | 
    
         
            -
              #resizer { display: none; }
         
     | 
| 
       60 
     | 
    
         
            -
              #nav {
         
     | 
| 
       61 
     | 
    
         
            -
                z-index: 9999;
         
     | 
| 
       62 
     | 
    
         
            -
                background: #fff;
         
     | 
| 
       63 
     | 
    
         
            -
                display: none;
         
     | 
| 
       64 
     | 
    
         
            -
                position: absolute;
         
     | 
| 
       65 
     | 
    
         
            -
                top: 40px;
         
     | 
| 
       66 
     | 
    
         
            -
                right: 12px;
         
     | 
| 
       67 
     | 
    
         
            -
                width: 500px;
         
     | 
| 
       68 
     | 
    
         
            -
                max-width: 80%;
         
     | 
| 
       69 
     | 
    
         
            -
                height: 80%;
         
     | 
| 
       70 
     | 
    
         
            -
                overflow-y: scroll;
         
     | 
| 
       71 
     | 
    
         
            -
                border: 1px solid #999;
         
     | 
| 
       72 
     | 
    
         
            -
                border-collapse: collapse;
         
     | 
| 
       73 
     | 
    
         
            -
                box-shadow: -7px 5px 25px #aaa;
         
     | 
| 
       74 
     | 
    
         
            -
                border-radius: 2px;
         
     | 
| 
       75 
     | 
    
         
            -
              }
         
     | 
| 
       76 
     | 
    
         
            -
            }
         
     | 
| 
       77 
     | 
    
         
            -
             
     | 
| 
       78 
     | 
    
         
            -
            @media (min-width: 920px) {
         
     | 
| 
       79 
     | 
    
         
            -
              body { height: 100%; overflow: hidden; }
         
     | 
| 
       80 
     | 
    
         
            -
              #main { height: 100%; overflow: auto; }
         
     | 
| 
       81 
     | 
    
         
            -
              #search { display: none; }
         
     | 
| 
       82 
     | 
    
         
            -
            }
         
     | 
| 
       83 
     | 
    
         
            -
             
     | 
| 
       84 
     | 
    
         
            -
            #main img { max-width: 100%; }
         
     | 
| 
       85 
     | 
    
         
            -
            h1 { font-size: 25px; margin: 1em 0 0.5em; padding-top: 4px; border-top: 1px dotted #d5d5d5; }
         
     | 
| 
       86 
     | 
    
         
            -
            h1.noborder { border-top: 0px; margin-top: 0; padding-top: 4px; }
         
     | 
| 
       87 
     | 
    
         
            -
            h1.title { margin-bottom: 10px; }
         
     | 
| 
       88 
     | 
    
         
            -
            h1.alphaindex { margin-top: 0; font-size: 22px; }
         
     | 
| 
       89 
     | 
    
         
            -
            h2 {
         
     | 
| 
       90 
     | 
    
         
            -
              padding: 0;
         
     | 
| 
       91 
     | 
    
         
            -
              padding-bottom: 3px;
         
     | 
| 
       92 
     | 
    
         
            -
              border-bottom: 1px #aaa solid;
         
     | 
| 
       93 
     | 
    
         
            -
              font-size: 1.4em;
         
     | 
| 
       94 
     | 
    
         
            -
              margin: 1.8em 0 0.5em;
         
     | 
| 
       95 
     | 
    
         
            -
              position: relative;
         
     | 
| 
       96 
     | 
    
         
            -
            }
         
     | 
| 
       97 
     | 
    
         
            -
            h2 small { font-weight: normal; font-size: 0.7em; display: inline; position: absolute; right: 0; }
         
     | 
| 
       98 
     | 
    
         
            -
            h2 small a {
         
     | 
| 
       99 
     | 
    
         
            -
              display: block;
         
     | 
| 
       100 
     | 
    
         
            -
              height: 20px;
         
     | 
| 
       101 
     | 
    
         
            -
              border: 1px solid #aaa;
         
     | 
| 
       102 
     | 
    
         
            -
              border-bottom: 0;
         
     | 
| 
       103 
     | 
    
         
            -
              border-top-left-radius: 5px;
         
     | 
| 
       104 
     | 
    
         
            -
              background: #f8f8f8;
         
     | 
| 
       105 
     | 
    
         
            -
              position: relative;
         
     | 
| 
       106 
     | 
    
         
            -
              padding: 2px 7px;
         
     | 
| 
       107 
     | 
    
         
            -
            }
         
     | 
| 
       108 
     | 
    
         
            -
            .clear { clear: both; }
         
     | 
| 
       109 
     | 
    
         
            -
            .inline { display: inline; }
         
     | 
| 
       110 
     | 
    
         
            -
            .inline p:first-child { display: inline; }
         
     | 
| 
       111 
     | 
    
         
            -
            .docstring, .tags, #filecontents { font-size: 15px; line-height: 1.5145em; }
         
     | 
| 
       112 
     | 
    
         
            -
            .docstring p > code, .docstring p > tt, .tags p > code, .tags p > tt {
         
     | 
| 
       113 
     | 
    
         
            -
              color: #c7254e; background: #f9f2f4; padding: 2px 4px; font-size: 1em;
         
     | 
| 
       114 
     | 
    
         
            -
              border-radius: 4px;
         
     | 
| 
       115 
     | 
    
         
            -
            }
         
     | 
| 
       116 
     | 
    
         
            -
            .docstring h1, .docstring h2, .docstring h3, .docstring h4 { padding: 0; border: 0; border-bottom: 1px dotted #bbb; }
         
     | 
| 
       117 
     | 
    
         
            -
            .docstring h1 { font-size: 1.2em; }
         
     | 
| 
       118 
     | 
    
         
            -
            .docstring h2 { font-size: 1.1em; }
         
     | 
| 
       119 
     | 
    
         
            -
            .docstring h3, .docstring h4 { font-size: 1em; border-bottom: 0; padding-top: 10px; }
         
     | 
| 
       120 
     | 
    
         
            -
            .summary_desc .object_link a, .docstring .object_link a {
         
     | 
| 
       121 
     | 
    
         
            -
              font-family: monospace; font-size: 1.05em;
         
     | 
| 
       122 
     | 
    
         
            -
              color: #05a; background: #EDF4FA; padding: 2px 4px; font-size: 1em;
         
     | 
| 
       123 
     | 
    
         
            -
              border-radius: 4px;
         
     | 
| 
       124 
     | 
    
         
            -
            }
         
     | 
| 
       125 
     | 
    
         
            -
            .rdoc-term { padding-right: 25px; font-weight: bold; }
         
     | 
| 
       126 
     | 
    
         
            -
            .rdoc-list p { margin: 0; padding: 0; margin-bottom: 4px; }
         
     | 
| 
       127 
     | 
    
         
            -
            .summary_desc pre.code .object_link a, .docstring pre.code .object_link a {
         
     | 
| 
       128 
     | 
    
         
            -
              padding: 0px; background: inherit; color: inherit; border-radius: inherit;
         
     | 
| 
       129 
     | 
    
         
            -
            }
         
     | 
| 
       130 
     | 
    
         
            -
             
     | 
| 
       131 
     | 
    
         
            -
            /* style for <table> */
         
     | 
| 
       132 
     | 
    
         
            -
            #filecontents table, .docstring table { border-collapse: collapse; }
         
     | 
| 
       133 
     | 
    
         
            -
            #filecontents table th, #filecontents table td,
         
     | 
| 
       134 
     | 
    
         
            -
            .docstring table th, .docstring table td { border: 1px solid #ccc; padding: 8px; padding-right: 17px; }
         
     | 
| 
       135 
     | 
    
         
            -
            #filecontents table tr:nth-child(odd),
         
     | 
| 
       136 
     | 
    
         
            -
            .docstring table tr:nth-child(odd) { background: #eee; }
         
     | 
| 
       137 
     | 
    
         
            -
            #filecontents table tr:nth-child(even),
         
     | 
| 
       138 
     | 
    
         
            -
            .docstring table tr:nth-child(even) { background: #fff; }
         
     | 
| 
       139 
     | 
    
         
            -
            #filecontents table th, .docstring table th { background: #fff; }
         
     | 
| 
       140 
     | 
    
         
            -
             
     | 
| 
       141 
     | 
    
         
            -
            /* style for <ul> */
         
     | 
| 
       142 
     | 
    
         
            -
            #filecontents li > p, .docstring li > p { margin: 0px; }
         
     | 
| 
       143 
     | 
    
         
            -
            #filecontents ul, .docstring ul { padding-left: 20px; }
         
     | 
| 
       144 
     | 
    
         
            -
            /* style for <dl> */
         
     | 
| 
       145 
     | 
    
         
            -
            #filecontents dl, .docstring dl { border: 1px solid #ccc; }
         
     | 
| 
       146 
     | 
    
         
            -
            #filecontents dt, .docstring dt { background: #ddd; font-weight: bold; padding: 3px 5px; }
         
     | 
| 
       147 
     | 
    
         
            -
            #filecontents dd, .docstring dd { padding: 5px 0px; margin-left: 18px; }
         
     | 
| 
       148 
     | 
    
         
            -
            #filecontents dd > p, .docstring dd > p { margin: 0px; }
         
     | 
| 
       149 
     | 
    
         
            -
             
     | 
| 
       150 
     | 
    
         
            -
            .note {
         
     | 
| 
       151 
     | 
    
         
            -
              color: #222;
         
     | 
| 
       152 
     | 
    
         
            -
              margin: 20px 0;
         
     | 
| 
       153 
     | 
    
         
            -
              padding: 10px;
         
     | 
| 
       154 
     | 
    
         
            -
              border: 1px solid #eee;
         
     | 
| 
       155 
     | 
    
         
            -
              border-radius: 3px;
         
     | 
| 
       156 
     | 
    
         
            -
              display: block;
         
     | 
| 
       157 
     | 
    
         
            -
            }
         
     | 
| 
       158 
     | 
    
         
            -
            .docstring .note {
         
     | 
| 
       159 
     | 
    
         
            -
              border-left-color: #ccc;
         
     | 
| 
       160 
     | 
    
         
            -
              border-left-width: 5px;
         
     | 
| 
       161 
     | 
    
         
            -
            }
         
     | 
| 
       162 
     | 
    
         
            -
            .note.todo { background: #ffffc5; border-color: #ececaa; }
         
     | 
| 
       163 
     | 
    
         
            -
            .note.returns_void { background: #efefef; }
         
     | 
| 
       164 
     | 
    
         
            -
            .note.deprecated { background: #ffe5e5; border-color: #e9dada; }
         
     | 
| 
       165 
     | 
    
         
            -
            .note.title.deprecated { background: #ffe5e5; border-color: #e9dada; }
         
     | 
| 
       166 
     | 
    
         
            -
            .note.private { background: #ffffc5; border-color: #ececaa; }
         
     | 
| 
       167 
     | 
    
         
            -
            .note.title { padding: 3px 6px; font-size: 0.9em; font-family: "Lucida Sans", "Lucida Grande", Verdana, Arial, sans-serif; display: inline; }
         
     | 
| 
       168 
     | 
    
         
            -
            .summary_signature + .note.title { margin-left: 7px; }
         
     | 
| 
       169 
     | 
    
         
            -
            h1 .note.title { font-size: 0.5em; font-weight: normal; padding: 3px 5px; position: relative; top: -3px; text-transform: capitalize; }
         
     | 
| 
       170 
     | 
    
         
            -
            .note.title { background: #efefef; }
         
     | 
| 
       171 
     | 
    
         
            -
            .note.title.constructor { color: #fff; background: #6a98d6; border-color: #6689d6; }
         
     | 
| 
       172 
     | 
    
         
            -
            .note.title.writeonly { color: #fff; background: #45a638; border-color: #2da31d; }
         
     | 
| 
       173 
     | 
    
         
            -
            .note.title.readonly { color: #fff; background: #6a98d6; border-color: #6689d6; }
         
     | 
| 
       174 
     | 
    
         
            -
            .note.title.private { background: #d5d5d5; border-color: #c5c5c5; }
         
     | 
| 
       175 
     | 
    
         
            -
            .note.title.not_defined_here { background: transparent; border: none; font-style: italic; }
         
     | 
| 
       176 
     | 
    
         
            -
            .discussion .note { margin-top: 6px; }
         
     | 
| 
       177 
     | 
    
         
            -
            .discussion .note:first-child { margin-top: 0; }
         
     | 
| 
       178 
     | 
    
         
            -
             
     | 
| 
       179 
     | 
    
         
            -
            h3.inherited {
         
     | 
| 
       180 
     | 
    
         
            -
              font-style: italic;
         
     | 
| 
       181 
     | 
    
         
            -
              font-family: "Lucida Sans", "Lucida Grande", Verdana, Arial, sans-serif;
         
     | 
| 
       182 
     | 
    
         
            -
              font-weight: normal;
         
     | 
| 
       183 
     | 
    
         
            -
              padding: 0;
         
     | 
| 
       184 
     | 
    
         
            -
              margin: 0;
         
     | 
| 
       185 
     | 
    
         
            -
              margin-top: 12px;
         
     | 
| 
       186 
     | 
    
         
            -
              margin-bottom: 3px;
         
     | 
| 
       187 
     | 
    
         
            -
              font-size: 13px;
         
     | 
| 
       188 
     | 
    
         
            -
            }
         
     | 
| 
       189 
     | 
    
         
            -
            p.inherited {
         
     | 
| 
       190 
     | 
    
         
            -
              padding: 0;
         
     | 
| 
       191 
     | 
    
         
            -
              margin: 0;
         
     | 
| 
       192 
     | 
    
         
            -
              margin-left: 25px;
         
     | 
| 
       193 
     | 
    
         
            -
            }
         
     | 
| 
       194 
     | 
    
         
            -
             
     | 
| 
       195 
     | 
    
         
            -
            .box_info dl {
         
     | 
| 
       196 
     | 
    
         
            -
              margin: 0;
         
     | 
| 
       197 
     | 
    
         
            -
              border: 0;
         
     | 
| 
       198 
     | 
    
         
            -
              width: 100%;
         
     | 
| 
       199 
     | 
    
         
            -
              font-size: 1em;
         
     | 
| 
       200 
     | 
    
         
            -
              display: flex;
         
     | 
| 
       201 
     | 
    
         
            -
              display: -webkit-flex;
         
     | 
| 
       202 
     | 
    
         
            -
              display: -ms-flexbox;
         
     | 
| 
       203 
     | 
    
         
            -
            }
         
     | 
| 
       204 
     | 
    
         
            -
            .box_info dl dt {
         
     | 
| 
       205 
     | 
    
         
            -
              flex-shrink: 0;
         
     | 
| 
       206 
     | 
    
         
            -
              -webkit-flex-shrink: 1;
         
     | 
| 
       207 
     | 
    
         
            -
              -ms-flex-shrink: 1;
         
     | 
| 
       208 
     | 
    
         
            -
              width: 100px;
         
     | 
| 
       209 
     | 
    
         
            -
              text-align: right;
         
     | 
| 
       210 
     | 
    
         
            -
              font-weight: bold;
         
     | 
| 
       211 
     | 
    
         
            -
              border: 1px solid #aaa;
         
     | 
| 
       212 
     | 
    
         
            -
              border-width: 1px 0px 0px 1px;
         
     | 
| 
       213 
     | 
    
         
            -
              padding: 6px 0;
         
     | 
| 
       214 
     | 
    
         
            -
              padding-right: 10px;
         
     | 
| 
       215 
     | 
    
         
            -
            }
         
     | 
| 
       216 
     | 
    
         
            -
            .box_info dl dd {
         
     | 
| 
       217 
     | 
    
         
            -
              flex-grow: 1;
         
     | 
| 
       218 
     | 
    
         
            -
              -webkit-flex-grow: 1;
         
     | 
| 
       219 
     | 
    
         
            -
              -ms-flex: 1;
         
     | 
| 
       220 
     | 
    
         
            -
              max-width: 420px;
         
     | 
| 
       221 
     | 
    
         
            -
              padding: 6px 0;
         
     | 
| 
       222 
     | 
    
         
            -
              padding-right: 20px;
         
     | 
| 
       223 
     | 
    
         
            -
              border: 1px solid #aaa;
         
     | 
| 
       224 
     | 
    
         
            -
              border-width: 1px 1px 0 0;
         
     | 
| 
       225 
     | 
    
         
            -
              overflow: hidden;
         
     | 
| 
       226 
     | 
    
         
            -
              position: relative;
         
     | 
| 
       227 
     | 
    
         
            -
            }
         
     | 
| 
       228 
     | 
    
         
            -
            .box_info dl:last-child > * {
         
     | 
| 
       229 
     | 
    
         
            -
              border-bottom: 1px solid #aaa;
         
     | 
| 
       230 
     | 
    
         
            -
            }
         
     | 
| 
       231 
     | 
    
         
            -
            .box_info dl:nth-child(odd) > * { background: #eee; }
         
     | 
| 
       232 
     | 
    
         
            -
            .box_info dl:nth-child(even) > * { background: #fff; }
         
     | 
| 
       233 
     | 
    
         
            -
            .box_info dl > * { margin: 0; }
         
     | 
| 
       234 
     | 
    
         
            -
             
     | 
| 
       235 
     | 
    
         
            -
            ul.toplevel { list-style: none; padding-left: 0; font-size: 1.1em; }
         
     | 
| 
       236 
     | 
    
         
            -
            .index_inline_list { padding-left: 0; font-size: 1.1em; }
         
     | 
| 
       237 
     | 
    
         
            -
             
     | 
| 
       238 
     | 
    
         
            -
            .index_inline_list li {
         
     | 
| 
       239 
     | 
    
         
            -
              list-style: none;
         
     | 
| 
       240 
     | 
    
         
            -
              display: inline-block;
         
     | 
| 
       241 
     | 
    
         
            -
              padding: 0 12px;
         
     | 
| 
       242 
     | 
    
         
            -
              line-height: 30px;
         
     | 
| 
       243 
     | 
    
         
            -
              margin-bottom: 5px;
         
     | 
| 
       244 
     | 
    
         
            -
            }
         
     | 
| 
       245 
     | 
    
         
            -
             
     | 
| 
       246 
     | 
    
         
            -
            dl.constants { margin-left: 10px; }
         
     | 
| 
       247 
     | 
    
         
            -
            dl.constants dt { font-weight: bold; font-size: 1.1em; margin-bottom: 5px; }
         
     | 
| 
       248 
     | 
    
         
            -
            dl.constants.compact dt { display: inline-block; font-weight: normal }
         
     | 
| 
       249 
     | 
    
         
            -
            dl.constants dd { width: 75%; white-space: pre; font-family: monospace; margin-bottom: 18px; }
         
     | 
| 
       250 
     | 
    
         
            -
            dl.constants .docstring .note:first-child { margin-top: 5px; }
         
     | 
| 
       251 
     | 
    
         
            -
             
     | 
| 
       252 
     | 
    
         
            -
            .summary_desc {
         
     | 
| 
       253 
     | 
    
         
            -
              margin-left: 32px;
         
     | 
| 
       254 
     | 
    
         
            -
              display: block;
         
     | 
| 
       255 
     | 
    
         
            -
              font-family: sans-serif;
         
     | 
| 
       256 
     | 
    
         
            -
              font-size: 1.1em;
         
     | 
| 
       257 
     | 
    
         
            -
              margin-top: 8px;
         
     | 
| 
       258 
     | 
    
         
            -
              line-height: 1.5145em;
         
     | 
| 
       259 
     | 
    
         
            -
              margin-bottom: 0.8em;
         
     | 
| 
       260 
     | 
    
         
            -
            }
         
     | 
| 
       261 
     | 
    
         
            -
            .summary_desc tt { font-size: 0.9em; }
         
     | 
| 
       262 
     | 
    
         
            -
            dl.constants .note { padding: 2px 6px; padding-right: 12px; margin-top: 6px; }
         
     | 
| 
       263 
     | 
    
         
            -
            dl.constants .docstring { margin-left: 32px; font-size: 0.9em; font-weight: normal; }
         
     | 
| 
       264 
     | 
    
         
            -
            dl.constants .tags { padding-left: 32px; font-size: 0.9em; line-height: 0.8em; }
         
     | 
| 
       265 
     | 
    
         
            -
            dl.constants .discussion *:first-child { margin-top: 0; }
         
     | 
| 
       266 
     | 
    
         
            -
            dl.constants .discussion *:last-child { margin-bottom: 0; }
         
     | 
| 
       267 
     | 
    
         
            -
             
     | 
| 
       268 
     | 
    
         
            -
            .method_details { border-top: 1px dotted #ccc; margin-top: 25px; padding-top: 0; }
         
     | 
| 
       269 
     | 
    
         
            -
            .method_details.first { border: 0; margin-top: 5px; }
         
     | 
| 
       270 
     | 
    
         
            -
            .method_details.first h3.signature { margin-top: 1em; }
         
     | 
| 
       271 
     | 
    
         
            -
            p.signature, h3.signature {
         
     | 
| 
       272 
     | 
    
         
            -
              font-size: 1.1em; font-weight: normal; font-family: Monaco, Consolas, Courier, monospace;
         
     | 
| 
       273 
     | 
    
         
            -
              padding: 6px 10px; margin-top: 1em;
         
     | 
| 
       274 
     | 
    
         
            -
              background: #E8F4FF; border: 1px solid #d8d8e5; border-radius: 5px;
         
     | 
| 
       275 
     | 
    
         
            -
            }
         
     | 
| 
       276 
     | 
    
         
            -
            p.signature tt,
         
     | 
| 
       277 
     | 
    
         
            -
            h3.signature tt { font-family: Monaco, Consolas, Courier, monospace; }
         
     | 
| 
       278 
     | 
    
         
            -
            p.signature .overload,
         
     | 
| 
       279 
     | 
    
         
            -
            h3.signature .overload { display: block; }
         
     | 
| 
       280 
     | 
    
         
            -
            p.signature .extras,
         
     | 
| 
       281 
     | 
    
         
            -
            h3.signature .extras { font-weight: normal; font-family: sans-serif; color: #444; font-size: 1em; }
         
     | 
| 
       282 
     | 
    
         
            -
            p.signature .not_defined_here,
         
     | 
| 
       283 
     | 
    
         
            -
            h3.signature .not_defined_here,
         
     | 
| 
       284 
     | 
    
         
            -
            p.signature .aliases,
         
     | 
| 
       285 
     | 
    
         
            -
            h3.signature .aliases { display: block; font-weight: normal; font-size: 0.9em; font-family: sans-serif; margin-top: 0px; color: #555; }
         
     | 
| 
       286 
     | 
    
         
            -
            p.signature .aliases .names,
         
     | 
| 
       287 
     | 
    
         
            -
            h3.signature .aliases .names { font-family: Monaco, Consolas, Courier, monospace; font-weight: bold; color: #000; font-size: 1.2em; }
         
     | 
| 
       288 
     | 
    
         
            -
             
     | 
| 
       289 
     | 
    
         
            -
            .tags .tag_title { font-size: 1.05em; margin-bottom: 0; font-weight: bold; }
         
     | 
| 
       290 
     | 
    
         
            -
            .tags .tag_title tt { color: initial; padding: initial; background: initial; }
         
     | 
| 
       291 
     | 
    
         
            -
            .tags ul { margin-top: 5px; padding-left: 30px; list-style: square; }
         
     | 
| 
       292 
     | 
    
         
            -
            .tags ul li { margin-bottom: 3px; }
         
     | 
| 
       293 
     | 
    
         
            -
            .tags ul .name { font-family: monospace; font-weight: bold; }
         
     | 
| 
       294 
     | 
    
         
            -
            .tags ul .note { padding: 3px 6px; }
         
     | 
| 
       295 
     | 
    
         
            -
            .tags { margin-bottom: 12px; }
         
     | 
| 
       296 
     | 
    
         
            -
             
     | 
| 
       297 
     | 
    
         
            -
            .tags .examples .tag_title { margin-bottom: 10px; font-weight: bold; }
         
     | 
| 
       298 
     | 
    
         
            -
            .tags .examples .inline p { padding: 0; margin: 0; font-weight: bold; font-size: 1em; }
         
     | 
| 
       299 
     | 
    
         
            -
            .tags .examples .inline p:before { content: "▸"; font-size: 1em; margin-right: 5px; }
         
     | 
| 
       300 
     | 
    
         
            -
             
     | 
| 
       301 
     | 
    
         
            -
            .tags .overload .overload_item { list-style: none; margin-bottom: 25px; }
         
     | 
| 
       302 
     | 
    
         
            -
            .tags .overload .overload_item .signature {
         
     | 
| 
       303 
     | 
    
         
            -
              padding: 2px 8px;
         
     | 
| 
       304 
     | 
    
         
            -
              background: #F1F8FF; border: 1px solid #d8d8e5; border-radius: 3px;
         
     | 
| 
       305 
     | 
    
         
            -
            }
         
     | 
| 
       306 
     | 
    
         
            -
            .tags .overload .signature { margin-left: -15px; font-family: monospace; display: block; font-size: 1.1em; }
         
     | 
| 
       307 
     | 
    
         
            -
            .tags .overload .docstring { margin-top: 15px; }
         
     | 
| 
       308 
     | 
    
         
            -
             
     | 
| 
       309 
     | 
    
         
            -
            .defines { display: none; }
         
     | 
| 
       310 
     | 
    
         
            -
             
     | 
| 
       311 
     | 
    
         
            -
            #method_missing_details .notice.this { position: relative; top: -8px; color: #888; padding: 0; margin: 0; }
         
     | 
| 
       312 
     | 
    
         
            -
             
     | 
| 
       313 
     | 
    
         
            -
            .showSource { font-size: 0.9em; }
         
     | 
| 
       314 
     | 
    
         
            -
            .showSource a, .showSource a:visited { text-decoration: none; color: #666; }
         
     | 
| 
       315 
     | 
    
         
            -
             
     | 
| 
       316 
     | 
    
         
            -
            #content a, #content a:visited { text-decoration: none; color: #05a; }
         
     | 
| 
       317 
     | 
    
         
            -
            #content a:hover { background: #ffffa5; }
         
     | 
| 
       318 
     | 
    
         
            -
             
     | 
| 
       319 
     | 
    
         
            -
            ul.summary {
         
     | 
| 
       320 
     | 
    
         
            -
              list-style: none;
         
     | 
| 
       321 
     | 
    
         
            -
              font-family: monospace;
         
     | 
| 
       322 
     | 
    
         
            -
              font-size: 1em;
         
     | 
| 
       323 
     | 
    
         
            -
              line-height: 1.5em;
         
     | 
| 
       324 
     | 
    
         
            -
              padding-left: 0px;
         
     | 
| 
       325 
     | 
    
         
            -
            }
         
     | 
| 
       326 
     | 
    
         
            -
            ul.summary a, ul.summary a:visited {
         
     | 
| 
       327 
     | 
    
         
            -
              text-decoration: none; font-size: 1.1em;
         
     | 
| 
       328 
     | 
    
         
            -
            }
         
     | 
| 
       329 
     | 
    
         
            -
            ul.summary li { margin-bottom: 5px; }
         
     | 
| 
       330 
     | 
    
         
            -
            .summary_signature { padding: 4px 8px; background: #f8f8f8; border: 1px solid #f0f0f0; border-radius: 5px; }
         
     | 
| 
       331 
     | 
    
         
            -
            .summary_signature:hover { background: #CFEBFF; border-color: #A4CCDA; cursor: pointer; }
         
     | 
| 
       332 
     | 
    
         
            -
            .summary_signature.deprecated { background: #ffe5e5; border-color: #e9dada; }
         
     | 
| 
       333 
     | 
    
         
            -
            ul.summary.compact li { display: inline-block; margin: 0px 5px 0px 0px; line-height: 2.6em;}
         
     | 
| 
       334 
     | 
    
         
            -
            ul.summary.compact .summary_signature { padding: 5px 7px; padding-right: 4px; }
         
     | 
| 
       335 
     | 
    
         
            -
            #content .summary_signature:hover a,
         
     | 
| 
       336 
     | 
    
         
            -
            #content .summary_signature:hover a:visited {
         
     | 
| 
       337 
     | 
    
         
            -
              background: transparent;
         
     | 
| 
       338 
     | 
    
         
            -
              color: #049;
         
     | 
| 
       339 
     | 
    
         
            -
            }
         
     | 
| 
       340 
     | 
    
         
            -
             
     | 
| 
       341 
     | 
    
         
            -
            p.inherited a { font-family: monospace; font-size: 0.9em; }
         
     | 
| 
       342 
     | 
    
         
            -
            p.inherited { word-spacing: 5px; font-size: 1.2em; }
         
     | 
| 
       343 
     | 
    
         
            -
             
     | 
| 
       344 
     | 
    
         
            -
            p.children { font-size: 1.2em; }
         
     | 
| 
       345 
     | 
    
         
            -
            p.children a { font-size: 0.9em; }
         
     | 
| 
       346 
     | 
    
         
            -
            p.children strong { font-size: 0.8em; }
         
     | 
| 
       347 
     | 
    
         
            -
            p.children strong.modules { padding-left: 5px; }
         
     | 
| 
       348 
     | 
    
         
            -
             
     | 
| 
       349 
     | 
    
         
            -
            ul.fullTree { display: none; padding-left: 0; list-style: none; margin-left: 0; margin-bottom: 10px; }
         
     | 
| 
       350 
     | 
    
         
            -
            ul.fullTree ul { margin-left: 0; padding-left: 0; list-style: none; }
         
     | 
| 
       351 
     | 
    
         
            -
            ul.fullTree li { text-align: center; padding-top: 18px; padding-bottom: 12px; background: url(data:image/gif;base64,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) no-repeat top center; }
         
     | 
| 
       352 
     | 
    
         
            -
            ul.fullTree li:first-child { padding-top: 0; background: transparent; }
         
     | 
| 
       353 
     | 
    
         
            -
            ul.fullTree li:last-child { padding-bottom: 0; }
         
     | 
| 
       354 
     | 
    
         
            -
            .showAll ul.fullTree { display: block; }
         
     | 
| 
       355 
     | 
    
         
            -
            .showAll .inheritName { display: none; }
         
     | 
| 
       356 
     | 
    
         
            -
             
     | 
| 
       357 
     | 
    
         
            -
            #search { position: absolute; right: 12px; top: 0px; z-index: 9000; }
         
     | 
| 
       358 
     | 
    
         
            -
            #search a {
         
     | 
| 
       359 
     | 
    
         
            -
              display: block; float: left;
         
     | 
| 
       360 
     | 
    
         
            -
              padding: 4px 8px; text-decoration: none; color: #05a; fill: #05a;
         
     | 
| 
       361 
     | 
    
         
            -
              border: 1px solid #d8d8e5;
         
     | 
| 
       362 
     | 
    
         
            -
              border-bottom-left-radius: 3px; border-bottom-right-radius: 3px;
         
     | 
| 
       363 
     | 
    
         
            -
              background: #F1F8FF;
         
     | 
| 
       364 
     | 
    
         
            -
              box-shadow: -1px 1px 3px #ddd;
         
     | 
| 
       365 
     | 
    
         
            -
            }
         
     | 
| 
       366 
     | 
    
         
            -
            #search a:hover { background: #f5faff; color: #06b; fill: #06b; }
         
     | 
| 
       367 
     | 
    
         
            -
            #search a.active {
         
     | 
| 
       368 
     | 
    
         
            -
              background: #568; padding-bottom: 20px; color: #fff; fill: #fff;
         
     | 
| 
       369 
     | 
    
         
            -
              border: 1px solid #457;
         
     | 
| 
       370 
     | 
    
         
            -
              border-top-left-radius: 5px; border-top-right-radius: 5px;
         
     | 
| 
       371 
     | 
    
         
            -
            }
         
     | 
| 
       372 
     | 
    
         
            -
            #search a.inactive { color: #999; fill: #999; }
         
     | 
| 
       373 
     | 
    
         
            -
            .inheritanceTree, .toggleDefines {
         
     | 
| 
       374 
     | 
    
         
            -
              float: right;
         
     | 
| 
       375 
     | 
    
         
            -
              border-left: 1px solid #aaa;
         
     | 
| 
       376 
     | 
    
         
            -
              position: absolute; top: 0; right: 0;
         
     | 
| 
       377 
     | 
    
         
            -
              height: 100%;
         
     | 
| 
       378 
     | 
    
         
            -
              background: #f6f6f6;
         
     | 
| 
       379 
     | 
    
         
            -
              padding: 5px;
         
     | 
| 
       380 
     | 
    
         
            -
              min-width: 55px;
         
     | 
| 
       381 
     | 
    
         
            -
              text-align: center;
         
     | 
| 
       382 
     | 
    
         
            -
            }
         
     | 
| 
       383 
     | 
    
         
            -
             
     | 
| 
       384 
     | 
    
         
            -
            #menu { font-size: 1.3em; color: #bbb; }
         
     | 
| 
       385 
     | 
    
         
            -
            #menu .title, #menu a { font-size: 0.7em; }
         
     | 
| 
       386 
     | 
    
         
            -
            #menu .title a { font-size: 1em; }
         
     | 
| 
       387 
     | 
    
         
            -
            #menu .title { color: #555; }
         
     | 
| 
       388 
     | 
    
         
            -
            #menu a, #menu a:visited { color: #333; text-decoration: none; border-bottom: 1px dotted #bbd; }
         
     | 
| 
       389 
     | 
    
         
            -
            #menu a:hover { color: #05a; }
         
     | 
| 
       390 
     | 
    
         
            -
             
     | 
| 
       391 
     | 
    
         
            -
            #footer { margin-top: 15px; border-top: 1px solid #ccc; text-align: center; padding: 7px 0; color: #999; }
         
     | 
| 
       392 
     | 
    
         
            -
            #footer a, #footer a:visited { color: #444; text-decoration: none; border-bottom: 1px dotted #bbd; }
         
     | 
| 
       393 
     | 
    
         
            -
            #footer a:hover { color: #05a; }
         
     | 
| 
       394 
     | 
    
         
            -
             
     | 
| 
       395 
     | 
    
         
            -
            #listing ul.alpha { font-size: 1.1em; }
         
     | 
| 
       396 
     | 
    
         
            -
            #listing ul.alpha { margin: 0; padding: 0; padding-bottom: 10px; list-style: none; }
         
     | 
| 
       397 
     | 
    
         
            -
            #listing ul.alpha li.letter { font-size: 1.4em; padding-bottom: 10px; }
         
     | 
| 
       398 
     | 
    
         
            -
            #listing ul.alpha ul { margin: 0; padding-left: 15px; }
         
     | 
| 
       399 
     | 
    
         
            -
            #listing ul small { color: #666; font-size: 0.7em; }
         
     | 
| 
       400 
     | 
    
         
            -
             
     | 
| 
       401 
     | 
    
         
            -
            li.r1 { background: #f0f0f0; }
         
     | 
| 
       402 
     | 
    
         
            -
            li.r2 { background: #fafafa; }
         
     | 
| 
       403 
     | 
    
         
            -
             
     | 
| 
       404 
     | 
    
         
            -
            #content ul.summary li.deprecated .summary_signature a,
         
     | 
| 
       405 
     | 
    
         
            -
            #content ul.summary li.deprecated .summary_signature a:visited { text-decoration: line-through; font-style: italic; }
         
     | 
| 
       406 
     | 
    
         
            -
             
     | 
| 
       407 
     | 
    
         
            -
            #toc {
         
     | 
| 
       408 
     | 
    
         
            -
              position: relative;
         
     | 
| 
       409 
     | 
    
         
            -
              float: right;
         
     | 
| 
       410 
     | 
    
         
            -
              overflow-x: auto;
         
     | 
| 
       411 
     | 
    
         
            -
              right: -3px;
         
     | 
| 
       412 
     | 
    
         
            -
              margin-left: 20px;
         
     | 
| 
       413 
     | 
    
         
            -
              margin-bottom: 20px;
         
     | 
| 
       414 
     | 
    
         
            -
              padding: 20px; padding-right: 30px;
         
     | 
| 
       415 
     | 
    
         
            -
              max-width: 300px;
         
     | 
| 
       416 
     | 
    
         
            -
              z-index: 5000;
         
     | 
| 
       417 
     | 
    
         
            -
              background: #fefefe;
         
     | 
| 
       418 
     | 
    
         
            -
              border: 1px solid #ddd;
         
     | 
| 
       419 
     | 
    
         
            -
              box-shadow: -2px 2px 6px #bbb;
         
     | 
| 
       420 
     | 
    
         
            -
            }
         
     | 
| 
       421 
     | 
    
         
            -
            #toc .title { margin: 0; }
         
     | 
| 
       422 
     | 
    
         
            -
            #toc ol { padding-left: 1.8em; }
         
     | 
| 
       423 
     | 
    
         
            -
            #toc li { font-size: 1.1em; line-height: 1.7em; }
         
     | 
| 
       424 
     | 
    
         
            -
            #toc > ol > li { font-size: 1.1em; font-weight: bold; }
         
     | 
| 
       425 
     | 
    
         
            -
            #toc ol > ol { font-size: 0.9em; }
         
     | 
| 
       426 
     | 
    
         
            -
            #toc ol ol > ol { padding-left: 2.3em; }
         
     | 
| 
       427 
     | 
    
         
            -
            #toc ol + li { margin-top: 0.3em; }
         
     | 
| 
       428 
     | 
    
         
            -
            #toc.hidden { padding: 10px; background: #fefefe; box-shadow: none; }
         
     | 
| 
       429 
     | 
    
         
            -
            #toc.hidden:hover { background: #fafafa; }
         
     | 
| 
       430 
     | 
    
         
            -
            #filecontents h1 + #toc.nofloat { margin-top: 0; }
         
     | 
| 
       431 
     | 
    
         
            -
            @media (max-width: 560px) {
         
     | 
| 
       432 
     | 
    
         
            -
              #toc {
         
     | 
| 
       433 
     | 
    
         
            -
                margin-left: 0;
         
     | 
| 
       434 
     | 
    
         
            -
                margin-top: 16px;
         
     | 
| 
       435 
     | 
    
         
            -
                float: none;
         
     | 
| 
       436 
     | 
    
         
            -
                max-width: none;
         
     | 
| 
       437 
     | 
    
         
            -
              }
         
     | 
| 
       438 
     | 
    
         
            -
            }
         
     | 
| 
       439 
     | 
    
         
            -
             
     | 
| 
       440 
     | 
    
         
            -
            /* syntax highlighting */
         
     | 
| 
       441 
     | 
    
         
            -
            .source_code { display: none; padding: 3px 8px; border-left: 8px solid #ddd; margin-top: 5px; }
         
     | 
| 
       442 
     | 
    
         
            -
            #filecontents pre.code, .docstring pre.code, .source_code pre { font-family: monospace; }
         
     | 
| 
       443 
     | 
    
         
            -
            #filecontents pre.code, .docstring pre.code { display: block; }
         
     | 
| 
       444 
     | 
    
         
            -
            .source_code .lines { padding-right: 12px; color: #555; text-align: right; }
         
     | 
| 
       445 
     | 
    
         
            -
            #filecontents pre.code, .docstring pre.code,
         
     | 
| 
       446 
     | 
    
         
            -
            .tags pre.example {
         
     | 
| 
       447 
     | 
    
         
            -
              padding: 9px 14px;
         
     | 
| 
       448 
     | 
    
         
            -
              margin-top: 4px;
         
     | 
| 
       449 
     | 
    
         
            -
              border: 1px solid #e1e1e8;
         
     | 
| 
       450 
     | 
    
         
            -
              background: #f7f7f9;
         
     | 
| 
       451 
     | 
    
         
            -
              border-radius: 4px;
         
     | 
| 
       452 
     | 
    
         
            -
              font-size: 1em;
         
     | 
| 
       453 
     | 
    
         
            -
              overflow-x: auto;
         
     | 
| 
       454 
     | 
    
         
            -
              line-height: 1.2em;
         
     | 
| 
       455 
     | 
    
         
            -
            }
         
     | 
| 
       456 
     | 
    
         
            -
            pre.code { color: #000; tab-size: 2; }
         
     | 
| 
       457 
     | 
    
         
            -
            pre.code .info.file { color: #555; }
         
     | 
| 
       458 
     | 
    
         
            -
            pre.code .val { color: #036A07; }
         
     | 
| 
       459 
     | 
    
         
            -
            pre.code .tstring_content,
         
     | 
| 
       460 
     | 
    
         
            -
            pre.code .heredoc_beg, pre.code .heredoc_end,
         
     | 
| 
       461 
     | 
    
         
            -
            pre.code .qwords_beg, pre.code .qwords_end, pre.code .qwords_sep,
         
     | 
| 
       462 
     | 
    
         
            -
            pre.code .words_beg, pre.code .words_end, pre.code .words_sep,
         
     | 
| 
       463 
     | 
    
         
            -
            pre.code .qsymbols_beg, pre.code .qsymbols_end, pre.code .qsymbols_sep,
         
     | 
| 
       464 
     | 
    
         
            -
            pre.code .symbols_beg, pre.code .symbols_end, pre.code .symbols_sep,
         
     | 
| 
       465 
     | 
    
         
            -
            pre.code .tstring, pre.code .dstring { color: #036A07; }
         
     | 
| 
       466 
     | 
    
         
            -
            pre.code .fid, pre.code .rubyid_new, pre.code .rubyid_to_s,
         
     | 
| 
       467 
     | 
    
         
            -
            pre.code .rubyid_to_sym, pre.code .rubyid_to_f,
         
     | 
| 
       468 
     | 
    
         
            -
            pre.code .dot + pre.code .id,
         
     | 
| 
       469 
     | 
    
         
            -
            pre.code .rubyid_to_i pre.code .rubyid_each { color: #0085FF; }
         
     | 
| 
       470 
     | 
    
         
            -
            pre.code .comment { color: #0066FF; }
         
     | 
| 
       471 
     | 
    
         
            -
            pre.code .const, pre.code .constant { color: #585CF6; }
         
     | 
| 
       472 
     | 
    
         
            -
            pre.code .label,
         
     | 
| 
       473 
     | 
    
         
            -
            pre.code .symbol { color: #C5060B; }
         
     | 
| 
       474 
     | 
    
         
            -
            pre.code .kw,
         
     | 
| 
       475 
     | 
    
         
            -
            pre.code .rubyid_require,
         
     | 
| 
       476 
     | 
    
         
            -
            pre.code .rubyid_extend,
         
     | 
| 
       477 
     | 
    
         
            -
            pre.code .rubyid_include { color: #0000FF; }
         
     | 
| 
       478 
     | 
    
         
            -
            pre.code .ivar { color: #318495; }
         
     | 
| 
       479 
     | 
    
         
            -
            pre.code .gvar,
         
     | 
| 
       480 
     | 
    
         
            -
            pre.code .rubyid_backref,
         
     | 
| 
       481 
     | 
    
         
            -
            pre.code .rubyid_nth_ref { color: #6D79DE; }
         
     | 
| 
       482 
     | 
    
         
            -
            pre.code .regexp, .dregexp { color: #036A07; }
         
     | 
| 
       483 
     | 
    
         
            -
            pre.code a { border-bottom: 1px dotted #bbf; }
         
     | 
| 
       484 
     | 
    
         
            -
            /* inline code */
         
     | 
| 
       485 
     | 
    
         
            -
            *:not(pre) > code {
         
     | 
| 
       486 
     | 
    
         
            -
            	padding: 1px 3px 1px 3px;
         
     | 
| 
       487 
     | 
    
         
            -
            	border: 1px solid #E1E1E8;
         
     | 
| 
       488 
     | 
    
         
            -
            	background: #F7F7F9;
         
     | 
| 
       489 
     | 
    
         
            -
            	border-radius: 4px;
         
     | 
| 
       490 
     | 
    
         
            -
            }
         
     | 
| 
       491 
     | 
    
         
            -
             
     | 
| 
       492 
     | 
    
         
            -
            /* Color fix for links */
         
     | 
| 
       493 
     | 
    
         
            -
            #content .summary_desc pre.code .id > .object_link a, /* identifier */
         
     | 
| 
       494 
     | 
    
         
            -
            #content .docstring pre.code .id > .object_link a { color: #0085FF; }
         
     | 
| 
       495 
     | 
    
         
            -
            #content .summary_desc pre.code .const > .object_link a, /* constant */
         
     | 
| 
       496 
     | 
    
         
            -
            #content .docstring pre.code .const > .object_link a { color: #585CF6; }
         
     |