hocon 0.0.7 → 0.1.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +7 -0
- data/README.md +4 -2
- data/lib/hocon.rb +2 -0
- data/lib/hocon/config.rb +1010 -0
- data/lib/hocon/config_error.rb +32 -2
- data/lib/hocon/config_factory.rb +46 -0
- data/lib/hocon/config_include_context.rb +49 -0
- data/lib/hocon/config_includer_file.rb +27 -0
- data/lib/hocon/config_list.rb +49 -0
- data/lib/hocon/config_mergeable.rb +74 -0
- data/lib/hocon/config_object.rb +144 -1
- data/lib/hocon/config_parse_options.rb +33 -9
- data/lib/hocon/config_parseable.rb +51 -0
- data/lib/hocon/config_render_options.rb +4 -2
- data/lib/hocon/config_resolve_options.rb +31 -0
- data/lib/hocon/config_syntax.rb +5 -2
- data/lib/hocon/config_util.rb +73 -0
- data/lib/hocon/config_value.rb +122 -0
- data/lib/hocon/config_value_factory.rb +66 -2
- data/lib/hocon/config_value_type.rb +5 -2
- data/lib/hocon/impl.rb +2 -0
- data/lib/hocon/impl/abstract_config_node.rb +29 -0
- data/lib/hocon/impl/abstract_config_node_value.rb +11 -0
- data/lib/hocon/impl/abstract_config_object.rb +148 -42
- data/lib/hocon/impl/abstract_config_value.rb +251 -11
- data/lib/hocon/impl/array_iterator.rb +19 -0
- data/lib/hocon/impl/config_boolean.rb +7 -1
- data/lib/hocon/impl/config_concatenation.rb +177 -28
- data/lib/hocon/impl/config_delayed_merge.rb +329 -0
- data/lib/hocon/impl/config_delayed_merge_object.rb +274 -0
- data/lib/hocon/impl/config_document_parser.rb +647 -0
- data/lib/hocon/impl/config_double.rb +44 -0
- data/lib/hocon/impl/config_impl.rb +143 -19
- data/lib/hocon/impl/config_impl_util.rb +18 -0
- data/lib/hocon/impl/config_include_kind.rb +10 -0
- data/lib/hocon/impl/config_int.rb +13 -1
- data/lib/hocon/impl/config_node_array.rb +11 -0
- data/lib/hocon/impl/config_node_comment.rb +19 -0
- data/lib/hocon/impl/config_node_complex_value.rb +54 -0
- data/lib/hocon/impl/config_node_concatenation.rb +11 -0
- data/lib/hocon/impl/config_node_field.rb +81 -0
- data/lib/hocon/impl/config_node_include.rb +33 -0
- data/lib/hocon/impl/config_node_object.rb +276 -0
- data/lib/hocon/impl/config_node_path.rb +48 -0
- data/lib/hocon/impl/config_node_root.rb +60 -0
- data/lib/hocon/impl/config_node_simple_value.rb +42 -0
- data/lib/hocon/impl/config_node_single_token.rb +17 -0
- data/lib/hocon/impl/config_null.rb +15 -7
- data/lib/hocon/impl/config_number.rb +43 -4
- data/lib/hocon/impl/config_parser.rb +403 -0
- data/lib/hocon/impl/config_reference.rb +142 -0
- data/lib/hocon/impl/config_string.rb +55 -7
- data/lib/hocon/impl/container.rb +29 -0
- data/lib/hocon/impl/default_transformer.rb +24 -15
- data/lib/hocon/impl/from_map_mode.rb +3 -1
- data/lib/hocon/impl/full_includer.rb +2 -0
- data/lib/hocon/impl/memo_key.rb +42 -0
- data/lib/hocon/impl/mergeable_value.rb +8 -0
- data/lib/hocon/impl/origin_type.rb +8 -2
- data/lib/hocon/impl/parseable.rb +455 -91
- data/lib/hocon/impl/path.rb +181 -59
- data/lib/hocon/impl/path_builder.rb +24 -3
- data/lib/hocon/impl/path_parser.rb +280 -0
- data/lib/hocon/impl/replaceable_merge_stack.rb +22 -0
- data/lib/hocon/impl/resolve_context.rb +254 -0
- data/lib/hocon/impl/resolve_memos.rb +21 -0
- data/lib/hocon/impl/resolve_result.rb +39 -0
- data/lib/hocon/impl/resolve_source.rb +354 -0
- data/lib/hocon/impl/resolve_status.rb +3 -1
- data/lib/hocon/impl/simple_config.rb +264 -10
- data/lib/hocon/impl/simple_config_document.rb +48 -0
- data/lib/hocon/impl/simple_config_list.rb +282 -8
- data/lib/hocon/impl/simple_config_object.rb +424 -88
- data/lib/hocon/impl/simple_config_origin.rb +263 -71
- data/lib/hocon/impl/simple_include_context.rb +31 -1
- data/lib/hocon/impl/simple_includer.rb +196 -1
- data/lib/hocon/impl/substitution_expression.rb +38 -0
- data/lib/hocon/impl/token.rb +17 -4
- data/lib/hocon/impl/token_type.rb +6 -2
- data/lib/hocon/impl/tokenizer.rb +339 -109
- data/lib/hocon/impl/tokens.rb +330 -79
- data/lib/hocon/impl/unmergeable.rb +14 -1
- data/lib/hocon/impl/unsupported_operation_error.rb +6 -0
- data/lib/hocon/impl/url.rb +37 -0
- data/lib/hocon/parser.rb +7 -0
- data/lib/hocon/parser/config_document.rb +92 -0
- data/lib/hocon/parser/config_document_factory.rb +36 -0
- data/lib/hocon/parser/config_node.rb +30 -0
- metadata +67 -43
- data/lib/hocon/impl/config_float.rb +0 -13
- data/lib/hocon/impl/parser.rb +0 -977
- data/lib/hocon/impl/properties_parser.rb +0 -83
@@ -1,4 +1,17 @@
|
|
1
|
+
# encoding: utf-8
|
2
|
+
|
1
3
|
require 'hocon/impl'
|
4
|
+
require 'hocon/config_error'
|
5
|
+
|
2
6
|
|
7
|
+
#
|
8
|
+
# Interface that tags a ConfigValue that is not mergeable until after
|
9
|
+
# substitutions are resolved. Basically these are special ConfigValue that
|
10
|
+
# never appear in a resolved tree, like {@link ConfigSubstitution} and
|
11
|
+
# {@link ConfigDelayedMerge}.
|
12
|
+
#
|
3
13
|
module Hocon::Impl::Unmergeable
|
4
|
-
|
14
|
+
def unmerged_values
|
15
|
+
raise Hocon::ConfigError::ConfigBugOrBrokenError, "subclasses of `Unmergeable` must implement `unmerged_values` (#{self.class})"
|
16
|
+
end
|
17
|
+
end
|
@@ -0,0 +1,37 @@
|
|
1
|
+
# encoding: utf-8
|
2
|
+
|
3
|
+
require 'uri'
|
4
|
+
require 'hocon/impl'
|
5
|
+
|
6
|
+
# There are several places in the Java codebase that
|
7
|
+
# use Java's URL constructor, and rely on it to throw
|
8
|
+
# a `MalformedURLException` if the URL isn't valid.
|
9
|
+
#
|
10
|
+
# Ruby doesn't really have a similar constructor /
|
11
|
+
# validator, so this is a little shim to hopefully
|
12
|
+
# make the ported code match up with the upstream more
|
13
|
+
# closely.
|
14
|
+
class Hocon::Impl::Url
|
15
|
+
class MalformedUrlError < StandardError
|
16
|
+
def initialize(msg, cause = nil)
|
17
|
+
super(msg)
|
18
|
+
@cause = cause
|
19
|
+
end
|
20
|
+
end
|
21
|
+
|
22
|
+
def initialize(url)
|
23
|
+
begin
|
24
|
+
# URI::parse wants a string
|
25
|
+
@url = URI.parse(url.to_s)
|
26
|
+
if !(@url.kind_of?(URI::HTTP))
|
27
|
+
raise MalformedUrlError, "Unrecognized URL: '#{url}'"
|
28
|
+
end
|
29
|
+
rescue URI::InvalidURIError => e
|
30
|
+
raise MalformedUrlError.new("Unrecognized URL: '#{url}' (error: #{e})", e)
|
31
|
+
end
|
32
|
+
end
|
33
|
+
|
34
|
+
def to_s
|
35
|
+
@url.to_s
|
36
|
+
end
|
37
|
+
end
|
data/lib/hocon/parser.rb
ADDED
@@ -0,0 +1,92 @@
|
|
1
|
+
# encoding: utf-8
|
2
|
+
|
3
|
+
require 'hocon/parser'
|
4
|
+
require 'hocon/config_error'
|
5
|
+
|
6
|
+
#
|
7
|
+
# Represents an individual HOCON or JSON file, preserving all
|
8
|
+
# formatting and syntax details. This can be used to replace
|
9
|
+
# individual values and exactly render the original text of the
|
10
|
+
# input.
|
11
|
+
#
|
12
|
+
# <p>
|
13
|
+
# Because this object is immutable, it is safe to use from multiple threads and
|
14
|
+
# there's no need for "defensive copies."
|
15
|
+
#
|
16
|
+
# <p>
|
17
|
+
# <em>Do not implement interface {@code ConfigDocument}</em>; it should only be
|
18
|
+
# implemented by the config library. Arbitrary implementations will not work
|
19
|
+
# because the library internals assume a specific concrete implementation.#
|
20
|
+
# Also, this interface is likely to grow new methods over time, so third-party
|
21
|
+
# implementations will break.
|
22
|
+
#
|
23
|
+
|
24
|
+
module Hocon::Parser::ConfigDocument
|
25
|
+
#
|
26
|
+
# Returns a new ConfigDocument that is a copy of the current ConfigDocument,
|
27
|
+
# but with the desired value set at the desired path. If the path exists, it will
|
28
|
+
# remove all duplicates before the final occurrence of the path, and replace the value
|
29
|
+
# at the final occurrence of the path. If the path does not exist, it will be added. If
|
30
|
+
# the document has an array as the root value, an exception will be thrown.
|
31
|
+
#
|
32
|
+
# @param path the path at which to set the desired value
|
33
|
+
# @param newValue the value to set at the desired path, represented as a string. This
|
34
|
+
# string will be parsed into a ConfigNode using the same options used to
|
35
|
+
# parse the entire document, and the text will be inserted
|
36
|
+
# as-is into the document. Leading and trailing comments, whitespace, or
|
37
|
+
# newlines are not allowed, and if present an exception will be thrown.
|
38
|
+
# If a concatenation is passed in for newValue but the document was parsed
|
39
|
+
# with JSON, the first value in the concatenation will be parsed and inserted
|
40
|
+
# into the ConfigDocument.
|
41
|
+
# @return a copy of the ConfigDocument with the desired value at the desired path
|
42
|
+
#
|
43
|
+
def set_value(path, new_value)
|
44
|
+
raise Hocon::ConfigError::ConfigBugOrBrokenError, "subclasses of ConfigDocument should override `render` (#{self.class})"
|
45
|
+
end
|
46
|
+
|
47
|
+
#
|
48
|
+
# Returns a new ConfigDocument that is a copy of the current ConfigDocument,
|
49
|
+
# but with the desired value set at the desired path as with {@link #setValue(String, String)},
|
50
|
+
# but takes a ConfigValue instead of a string.
|
51
|
+
#
|
52
|
+
# @param path the path at which to set the desired value
|
53
|
+
# @param newValue the value to set at the desired path, represented as a ConfigValue.
|
54
|
+
# The rendered text of the ConfigValue will be inserted into the
|
55
|
+
# ConfigDocument.
|
56
|
+
# @return a copy of the ConfigDocument with the desired value at the desired path
|
57
|
+
#
|
58
|
+
def set_config_value(path, new_value)
|
59
|
+
raise Hocon::ConfigError::ConfigBugOrBrokenError, "subclasses of ConfigDocument should override `render` (#{self.class})"
|
60
|
+
end
|
61
|
+
|
62
|
+
#
|
63
|
+
# Returns a new ConfigDocument that is a copy of the current ConfigDocument, but with
|
64
|
+
# the value at the desired path removed. If the desired path does not exist in the document,
|
65
|
+
# a copy of the current document will be returned. If there is an array at the root, an exception
|
66
|
+
# will be thrown.
|
67
|
+
#
|
68
|
+
# @param path the path to remove from the document
|
69
|
+
# @return a copy of the ConfigDocument with the desired value removed from the document.
|
70
|
+
#
|
71
|
+
def remove_value(path)
|
72
|
+
raise Hocon::ConfigError::ConfigBugOrBrokenError, "subclasses of ConfigDocument should override `render` (#{self.class})"
|
73
|
+
end
|
74
|
+
|
75
|
+
#
|
76
|
+
# Returns a boolean indicating whether or not a ConfigDocument has a value at the desired path.
|
77
|
+
# @param path the path to check
|
78
|
+
# @return true if the path exists in the document, otherwise false
|
79
|
+
#
|
80
|
+
def has_value?(path)
|
81
|
+
raise Hocon::ConfigError::ConfigBugOrBrokenError, "subclasses of ConfigDocument should override `render` (#{self.class})"
|
82
|
+
end
|
83
|
+
|
84
|
+
#
|
85
|
+
# The original text of the input, modified if necessary with
|
86
|
+
# any replaced or added values.
|
87
|
+
# @return the modified original text
|
88
|
+
#
|
89
|
+
def render
|
90
|
+
raise Hocon::ConfigError::ConfigBugOrBrokenError, "subclasses of ConfigDocument should override `render` (#{self.class})"
|
91
|
+
end
|
92
|
+
end
|
@@ -0,0 +1,36 @@
|
|
1
|
+
# encoding: utf-8
|
2
|
+
|
3
|
+
require 'hocon/parser'
|
4
|
+
require 'hocon/impl/parseable'
|
5
|
+
require 'hocon/config_parse_options'
|
6
|
+
|
7
|
+
#
|
8
|
+
# Factory for creating {@link
|
9
|
+
# com.typesafe.config.parser.ConfigDocument} instances.
|
10
|
+
#
|
11
|
+
class Hocon::Parser::ConfigDocumentFactory
|
12
|
+
#
|
13
|
+
# Parses a file into a ConfigDocument instance.
|
14
|
+
#
|
15
|
+
# @param file
|
16
|
+
# the file to parse
|
17
|
+
# @param options
|
18
|
+
# parse options to control how the file is interpreted
|
19
|
+
# @return the parsed configuration
|
20
|
+
# @throws com.typesafe.config.ConfigException on IO or parse errors
|
21
|
+
#
|
22
|
+
def self.parse_file(file, options = Hocon::ConfigParseOptions.defaults)
|
23
|
+
Hocon::Impl::Parseable.new_file(file, options).parse_config_document
|
24
|
+
end
|
25
|
+
|
26
|
+
#
|
27
|
+
# Parses a string which should be valid HOCON or JSON.
|
28
|
+
#
|
29
|
+
# @param s string to parse
|
30
|
+
# @param options parse options
|
31
|
+
# @return the parsed configuration
|
32
|
+
#
|
33
|
+
def self.parse_string(s, options = Hocon::ConfigParseOptions.defaults)
|
34
|
+
Hocon::Impl::Parseable.new_string(s, options).parse_config_document
|
35
|
+
end
|
36
|
+
end
|
@@ -0,0 +1,30 @@
|
|
1
|
+
# encoding: utf-8
|
2
|
+
|
3
|
+
require 'hocon/parser'
|
4
|
+
require 'hocon/config_error'
|
5
|
+
|
6
|
+
#
|
7
|
+
# An immutable node that makes up the ConfigDocument AST, and which can be
|
8
|
+
# used to reproduce part or all of the original text of an input.
|
9
|
+
#
|
10
|
+
# <p>
|
11
|
+
# Because this object is immutable, it is safe to use from multiple threads and
|
12
|
+
# there's no need for "defensive copies."
|
13
|
+
#
|
14
|
+
# <p>
|
15
|
+
# <em>Do not implement interface {@code ConfigNode}</em>; it should only be
|
16
|
+
# implemented by the config library. Arbitrary implementations will not work
|
17
|
+
# because the library internals assume a specific concrete implementation.
|
18
|
+
# Also, this interface is likely to grow new methods over time, so third-party
|
19
|
+
# implementations will break.
|
20
|
+
#
|
21
|
+
|
22
|
+
module Hocon::Parser::ConfigNode
|
23
|
+
#
|
24
|
+
# The original text of the input which was used to form this particular node.
|
25
|
+
# @return the original text used to form this node as a String
|
26
|
+
#
|
27
|
+
def render
|
28
|
+
raise Hocon::ConfigError::ConfigBugOrBrokenError, "subclasses of ConfigNode should override `render` (#{self.class})"
|
29
|
+
end
|
30
|
+
end
|
metadata
CHANGED
@@ -1,140 +1,164 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: hocon
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.0
|
5
|
-
prerelease:
|
4
|
+
version: 0.1.0
|
6
5
|
platform: ruby
|
7
6
|
authors:
|
8
7
|
- Chris Price
|
9
8
|
- Wayne Warren
|
10
9
|
- Preben Ingvaldsen
|
10
|
+
- Joe Pinsonault
|
11
|
+
- Kevin Corcoran
|
11
12
|
autorequire:
|
12
13
|
bindir: bin
|
13
14
|
cert_chain: []
|
14
|
-
date: 2015-
|
15
|
+
date: 2015-04-09 00:00:00.000000000 Z
|
15
16
|
dependencies:
|
16
17
|
- !ruby/object:Gem::Dependency
|
17
18
|
name: bundler
|
18
19
|
requirement: !ruby/object:Gem::Requirement
|
19
|
-
none: false
|
20
20
|
requirements:
|
21
|
-
- - ~>
|
21
|
+
- - "~>"
|
22
22
|
- !ruby/object:Gem::Version
|
23
23
|
version: '1.5'
|
24
24
|
type: :development
|
25
25
|
prerelease: false
|
26
26
|
version_requirements: !ruby/object:Gem::Requirement
|
27
|
-
none: false
|
28
27
|
requirements:
|
29
|
-
- - ~>
|
28
|
+
- - "~>"
|
30
29
|
- !ruby/object:Gem::Version
|
31
30
|
version: '1.5'
|
32
|
-
- !ruby/object:Gem::Dependency
|
33
|
-
name: rake
|
34
|
-
requirement: !ruby/object:Gem::Requirement
|
35
|
-
none: false
|
36
|
-
requirements:
|
37
|
-
- - ! '>='
|
38
|
-
- !ruby/object:Gem::Version
|
39
|
-
version: '0'
|
40
|
-
type: :development
|
41
|
-
prerelease: false
|
42
|
-
version_requirements: !ruby/object:Gem::Requirement
|
43
|
-
none: false
|
44
|
-
requirements:
|
45
|
-
- - ! '>='
|
46
|
-
- !ruby/object:Gem::Version
|
47
|
-
version: '0'
|
48
31
|
- !ruby/object:Gem::Dependency
|
49
32
|
name: rspec
|
50
33
|
requirement: !ruby/object:Gem::Requirement
|
51
|
-
none: false
|
52
34
|
requirements:
|
53
|
-
- - ~>
|
35
|
+
- - "~>"
|
54
36
|
- !ruby/object:Gem::Version
|
55
37
|
version: '2.14'
|
56
38
|
type: :development
|
57
39
|
prerelease: false
|
58
40
|
version_requirements: !ruby/object:Gem::Requirement
|
59
|
-
none: false
|
60
41
|
requirements:
|
61
|
-
- - ~>
|
42
|
+
- - "~>"
|
62
43
|
- !ruby/object:Gem::Version
|
63
44
|
version: '2.14'
|
64
|
-
description: == A port of the Java {Typesafe Config}[https://github.com/typesafehub/config]
|
65
|
-
library to Ruby
|
45
|
+
description: "== A port of the Java {Typesafe Config}[https://github.com/typesafehub/config]
|
46
|
+
library to Ruby"
|
66
47
|
email: chris@puppetlabs.com
|
67
48
|
executables: []
|
68
49
|
extensions: []
|
69
50
|
extra_rdoc_files: []
|
70
51
|
files:
|
52
|
+
- LICENSE
|
53
|
+
- README.md
|
54
|
+
- lib/hocon.rb
|
55
|
+
- lib/hocon/config.rb
|
71
56
|
- lib/hocon/config_error.rb
|
72
57
|
- lib/hocon/config_factory.rb
|
58
|
+
- lib/hocon/config_include_context.rb
|
59
|
+
- lib/hocon/config_includer_file.rb
|
60
|
+
- lib/hocon/config_list.rb
|
61
|
+
- lib/hocon/config_mergeable.rb
|
73
62
|
- lib/hocon/config_object.rb
|
74
63
|
- lib/hocon/config_parse_options.rb
|
64
|
+
- lib/hocon/config_parseable.rb
|
75
65
|
- lib/hocon/config_render_options.rb
|
66
|
+
- lib/hocon/config_resolve_options.rb
|
76
67
|
- lib/hocon/config_syntax.rb
|
68
|
+
- lib/hocon/config_util.rb
|
69
|
+
- lib/hocon/config_value.rb
|
77
70
|
- lib/hocon/config_value_factory.rb
|
78
71
|
- lib/hocon/config_value_type.rb
|
72
|
+
- lib/hocon/impl.rb
|
73
|
+
- lib/hocon/impl/abstract_config_node.rb
|
74
|
+
- lib/hocon/impl/abstract_config_node_value.rb
|
79
75
|
- lib/hocon/impl/abstract_config_object.rb
|
80
76
|
- lib/hocon/impl/abstract_config_value.rb
|
77
|
+
- lib/hocon/impl/array_iterator.rb
|
81
78
|
- lib/hocon/impl/config_boolean.rb
|
82
79
|
- lib/hocon/impl/config_concatenation.rb
|
83
|
-
- lib/hocon/impl/
|
80
|
+
- lib/hocon/impl/config_delayed_merge.rb
|
81
|
+
- lib/hocon/impl/config_delayed_merge_object.rb
|
82
|
+
- lib/hocon/impl/config_document_parser.rb
|
83
|
+
- lib/hocon/impl/config_double.rb
|
84
84
|
- lib/hocon/impl/config_impl.rb
|
85
85
|
- lib/hocon/impl/config_impl_util.rb
|
86
|
+
- lib/hocon/impl/config_include_kind.rb
|
86
87
|
- lib/hocon/impl/config_int.rb
|
88
|
+
- lib/hocon/impl/config_node_array.rb
|
89
|
+
- lib/hocon/impl/config_node_comment.rb
|
90
|
+
- lib/hocon/impl/config_node_complex_value.rb
|
91
|
+
- lib/hocon/impl/config_node_concatenation.rb
|
92
|
+
- lib/hocon/impl/config_node_field.rb
|
93
|
+
- lib/hocon/impl/config_node_include.rb
|
94
|
+
- lib/hocon/impl/config_node_object.rb
|
95
|
+
- lib/hocon/impl/config_node_path.rb
|
96
|
+
- lib/hocon/impl/config_node_root.rb
|
97
|
+
- lib/hocon/impl/config_node_simple_value.rb
|
98
|
+
- lib/hocon/impl/config_node_single_token.rb
|
87
99
|
- lib/hocon/impl/config_null.rb
|
88
100
|
- lib/hocon/impl/config_number.rb
|
101
|
+
- lib/hocon/impl/config_parser.rb
|
102
|
+
- lib/hocon/impl/config_reference.rb
|
89
103
|
- lib/hocon/impl/config_string.rb
|
104
|
+
- lib/hocon/impl/container.rb
|
90
105
|
- lib/hocon/impl/default_transformer.rb
|
91
106
|
- lib/hocon/impl/from_map_mode.rb
|
92
107
|
- lib/hocon/impl/full_includer.rb
|
108
|
+
- lib/hocon/impl/memo_key.rb
|
109
|
+
- lib/hocon/impl/mergeable_value.rb
|
93
110
|
- lib/hocon/impl/origin_type.rb
|
94
111
|
- lib/hocon/impl/parseable.rb
|
95
|
-
- lib/hocon/impl/parser.rb
|
96
112
|
- lib/hocon/impl/path.rb
|
97
113
|
- lib/hocon/impl/path_builder.rb
|
98
|
-
- lib/hocon/impl/
|
114
|
+
- lib/hocon/impl/path_parser.rb
|
115
|
+
- lib/hocon/impl/replaceable_merge_stack.rb
|
116
|
+
- lib/hocon/impl/resolve_context.rb
|
117
|
+
- lib/hocon/impl/resolve_memos.rb
|
118
|
+
- lib/hocon/impl/resolve_result.rb
|
119
|
+
- lib/hocon/impl/resolve_source.rb
|
99
120
|
- lib/hocon/impl/resolve_status.rb
|
100
121
|
- lib/hocon/impl/simple_config.rb
|
122
|
+
- lib/hocon/impl/simple_config_document.rb
|
101
123
|
- lib/hocon/impl/simple_config_list.rb
|
102
124
|
- lib/hocon/impl/simple_config_object.rb
|
103
125
|
- lib/hocon/impl/simple_config_origin.rb
|
104
126
|
- lib/hocon/impl/simple_include_context.rb
|
105
127
|
- lib/hocon/impl/simple_includer.rb
|
128
|
+
- lib/hocon/impl/substitution_expression.rb
|
106
129
|
- lib/hocon/impl/token.rb
|
107
130
|
- lib/hocon/impl/token_type.rb
|
108
131
|
- lib/hocon/impl/tokenizer.rb
|
109
132
|
- lib/hocon/impl/tokens.rb
|
110
133
|
- lib/hocon/impl/unmergeable.rb
|
111
|
-
- lib/hocon/impl.rb
|
112
|
-
- lib/hocon.rb
|
113
|
-
-
|
114
|
-
-
|
115
|
-
|
134
|
+
- lib/hocon/impl/unsupported_operation_error.rb
|
135
|
+
- lib/hocon/impl/url.rb
|
136
|
+
- lib/hocon/parser.rb
|
137
|
+
- lib/hocon/parser/config_document.rb
|
138
|
+
- lib/hocon/parser/config_document_factory.rb
|
139
|
+
- lib/hocon/parser/config_node.rb
|
140
|
+
homepage: https://github.com/puppetlabs/ruby-hocon
|
116
141
|
licenses:
|
117
142
|
- Apache License, v2
|
143
|
+
metadata: {}
|
118
144
|
post_install_message:
|
119
145
|
rdoc_options: []
|
120
146
|
require_paths:
|
121
147
|
- lib
|
122
148
|
required_ruby_version: !ruby/object:Gem::Requirement
|
123
|
-
none: false
|
124
149
|
requirements:
|
125
|
-
- -
|
150
|
+
- - ">="
|
126
151
|
- !ruby/object:Gem::Version
|
127
152
|
version: '0'
|
128
153
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
129
|
-
none: false
|
130
154
|
requirements:
|
131
|
-
- -
|
155
|
+
- - ">="
|
132
156
|
- !ruby/object:Gem::Version
|
133
157
|
version: '0'
|
134
158
|
requirements: []
|
135
159
|
rubyforge_project:
|
136
|
-
rubygems_version:
|
160
|
+
rubygems_version: 2.2.2
|
137
161
|
signing_key:
|
138
|
-
specification_version:
|
162
|
+
specification_version: 4
|
139
163
|
summary: HOCON Config Library
|
140
164
|
test_files: []
|
@@ -1,13 +0,0 @@
|
|
1
|
-
require 'hocon/impl'
|
2
|
-
require 'hocon/impl/config_number'
|
3
|
-
|
4
|
-
class Hocon::Impl::ConfigFloat < Hocon::Impl::ConfigNumber
|
5
|
-
def initialize(origin, value, original_text)
|
6
|
-
super(origin, original_text)
|
7
|
-
@value = value
|
8
|
-
end
|
9
|
-
|
10
|
-
def unwrapped
|
11
|
-
@value
|
12
|
-
end
|
13
|
-
end
|