@@ -36,12 +36,14 @@ explicitly create a `Parser` but instead one directly use use
36
36
will however reuse some internal data structures which can be beneficial for
37
37
performance if a larger number of small files are parsed.
38
38
"""
39
- const Parser = Internals. Parser
39
+ struct Parser
40
+ _p:: Internals.Parser{Dates}
41
+ end
40
42
41
43
# Dates-enabled constructors
42
- Parser () = Parser {Dates} ()
43
- Parser (io:: IO ) = Parser {Dates} (io)
44
- Parser (str:: String ; filepath= nothing ) = Parser {Dates} (str; filepath)
44
+ Parser () = Parser (Internals . Parser {Dates} () )
45
+ Parser (io:: IO ) = Parser (Internals . Parser {Dates} (io) )
46
+ Parser (str:: String ; filepath= nothing ) = Parser (Internals . Parser {Dates} (str; filepath) )
45
47
46
48
"""
47
49
parsefile(f::AbstractString)
@@ -53,9 +55,9 @@ Parse file `f` and return the resulting table (dictionary). Throw a
53
55
See also [`TOML.tryparsefile`](@ref).
54
56
"""
55
57
parsefile (f:: AbstractString ) =
56
- Internals. parse (Parser (readstring (f); filepath= abspath (f)))
58
+ Internals. parse (Internals . Parser {Dates} (readstring (f); filepath= abspath (f)))
57
59
parsefile (p:: Parser , f:: AbstractString ) =
58
- Internals. parse (Internals. reinit! (p, readstring (f); filepath= abspath (f)))
60
+ Internals. parse (Internals. reinit! (p. _p , readstring (f); filepath= abspath (f)))
59
61
60
62
"""
61
63
tryparsefile(f::AbstractString)
@@ -67,9 +69,9 @@ Parse file `f` and return the resulting table (dictionary). Return a
67
69
See also [`TOML.parsefile`](@ref).
68
70
"""
69
71
tryparsefile (f:: AbstractString ) =
70
- Internals. tryparse (Parser (readstring (f); filepath= abspath (f)))
72
+ Internals. tryparse (Internals . Parser {Dates} (readstring (f); filepath= abspath (f)))
71
73
tryparsefile (p:: Parser , f:: AbstractString ) =
72
- Internals. tryparse (Internals. reinit! (p, readstring (f); filepath= abspath (f)))
74
+ Internals. tryparse (Internals. reinit! (p. _p , readstring (f); filepath= abspath (f)))
73
75
74
76
"""
75
77
parse(x::Union{AbstractString, IO})
@@ -80,12 +82,13 @@ Throw a [`ParserError`](@ref) upon failure.
80
82
81
83
See also [`TOML.tryparse`](@ref).
82
84
"""
85
+ parse (p:: Parser ) = Internals. parse (p. _p)
83
86
parse (str:: AbstractString ) =
84
- Internals. parse (Parser (String (str)))
87
+ Internals. parse (Internals . Parser {Dates} (String (str)))
85
88
parse (p:: Parser , str:: AbstractString ) =
86
- Internals. parse (Internals. reinit! (p, String (str)))
89
+ Internals. parse (Internals. reinit! (p. _p , String (str)))
87
90
parse (io:: IO ) = parse (read (io, String))
88
- parse (p:: Parser , io:: IO ) = parse (p, read (io, String))
91
+ parse (p:: Parser , io:: IO ) = parse (p. _p , read (io, String))
89
92
90
93
"""
91
94
tryparse(x::Union{AbstractString, IO})
@@ -96,12 +99,13 @@ Return a [`ParserError`](@ref) upon failure.
96
99
97
100
See also [`TOML.parse`](@ref).
98
101
"""
102
+ tryparse (p:: Parser ) = Internals. tryparse (p. _p)
99
103
tryparse (str:: AbstractString ) =
100
- Internals. tryparse (Parser (String (str)))
104
+ Internals. tryparse (Internals . Parser {Dates} (String (str)))
101
105
tryparse (p:: Parser , str:: AbstractString ) =
102
- Internals. tryparse (Internals. reinit! (p, String (str)))
106
+ Internals. tryparse (Internals. reinit! (p. _p , String (str)))
103
107
tryparse (io:: IO ) = tryparse (read (io, String))
104
- tryparse (p:: Parser , io:: IO ) = tryparse (p, read (io, String))
108
+ tryparse (p:: Parser , io:: IO ) = tryparse (p. _p , read (io, String))
105
109
106
110
"""
107
111
ParserError
0 commit comments