Commit Graph

16 Commits

Author SHA1 Message Date
Sean Chittenden
20ef8cf57f
Return an error instead of printing stray illegal\n to stdout. 2017-04-20 16:09:49 -07:00
Mitchell Hashimoto
c03d57b578
json/parser: empty list value should not flatten
Fixes https://github.com/hashicorp/terraform/issues/8886

While parsing JSON, an empty list value would be assumed to be a
non-existent list of objects, and would be removed from the result. This
may have never been the correct behavior but always worked okay because
we previously didn't support lists as first class types.

With the support of lists, we need to actually return the empty list as
the type. If we return nothing, then projects like Terraform will think
that the value was never set, which is false.
2016-10-25 10:44:39 -07:00
Mitchell Hashimoto
6f5bfed9a0 Merge pull request #149 from Acconut/fix-missing-assign
json/parser: set Assign property when parsing object item
2016-10-08 15:35:57 +08:00
Marius
28370ddc98 json/parser: set Assign property when parsing object item 2016-09-05 21:46:43 +02:00
Mitchell Hashimoto
2fd69cb0a5 json: interpolations have to be escaped
At some point we ignored the " in interpolations. We do this for HCL and
it is correct but this is invalid JSON syntax and for JSON we've always
had the stance that we have to escape them.
2016-09-02 11:31:47 -05:00
Mitchell Hashimoto
352bb4b5e3
hcl/parser: don't allow objects with no keys 2016-06-21 13:07:06 -07:00
Mitchell Hashimoto
685b5f7416
json: verify that objects have keys [GH-128] 2016-06-21 12:57:45 -07:00
Sander van Harmelen
cf83c24abf Fix flattening of empty objects 2015-11-20 17:56:37 +01:00
Sander van Harmelen
2f117c801c This fixes a bug in the flattener so that objects are flattened as one list object 2015-11-19 17:42:55 +01:00
Fatih Arslan
d45f5d133c ast: change signature of Walk() to allow rewriting AST
With the previous Walk function it's not easy to rewrite the node as we
don't have any kind of reference to the parent. If we want to rewrite a
given AST, we have to manually traverse it as Walk is not usable. To
allow us rewriting the AST we change the signature of the function
passed to Walk. It'll allow us to rewrite the AST and return back.
Internally Walk() overrides the returned AST.

This idea was also talked here:
https://groups.google.com/forum/#!topic/golang-nuts/cRZQV36IckM
extensively.
2015-11-14 21:58:31 +02:00
Mitchell Hashimoto
637d86c42d json/parser: can parse lists of objects 2015-11-08 16:28:18 -08:00
Mitchell Hashimoto
407a4ff94c json/parser: flatten 2015-11-08 16:20:34 -08:00
Mitchell Hashimoto
7ccda83497 json/parser: can parse multiple objects 2015-11-08 16:11:15 -08:00
Mitchell Hashimoto
340f0af3c0 json/token: fix issues with unquoting sttrings from JSON 2015-11-08 16:08:36 -08:00
Mitchell Hashimoto
cf0da81e50 Remove json files, add flatten.go to json/parse 2015-11-08 15:52:57 -08:00
Mitchell Hashimoto
f5a27d4be4 json/parser 2015-11-08 15:50:37 -08:00