File tree Expand file tree Collapse file tree 7 files changed +79
-0
lines changed
implementations/Golang_github.com-theory-jsonpath Expand file tree Collapse file tree 7 files changed +79
-0
lines changed Original file line number Diff line number Diff line change
1
+ https://github.com/theory/jsonpath
Original file line number Diff line number Diff line change
1
+ root = implementations/Golang_github.com-theory-jsonpath
2
+ builddir = $root /build
3
+
4
+ # Hack target directory because golang is bad, again
5
+ rule build
6
+ command = cd $root && go build -o build/main
7
+
8
+ build $builddir/main : build | $root/main.go $root/go.mod $root/go.sum
9
+
10
+ build $root/install : phony $builddir/main
Original file line number Diff line number Diff line change
1
+ module example.com/main
2
+
3
+ go 1.23
4
+
5
+ require github.com/theory/jsonpath v0.10.0
Original file line number Diff line number Diff line change
1
+ github.com/davecgh/go-spew v1.1.1 h1:vj9j/u1bqnvCEfJOwUhtlOARqs3+rkHYY13jYWTU97c =
2
+ github.com/davecgh/go-spew v1.1.1 /go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38 =
3
+ github.com/pmezard/go-difflib v1.0.0 h1:4DBwDE0NGyQoBHbLQYPwSUPoCMWR5BEzIk/f1lZbAQM =
4
+ github.com/pmezard/go-difflib v1.0.0 /go.mod h1:iKH77koFhYxTK1pcRnkKkqfTogsbg7gZNVY4sRDYZ/4 =
5
+ github.com/stretchr/testify v1.10.0 h1:Xv5erBjTwe/5IxqUQTdXv5kgmIvbHo3QQyRwhJsOfJA =
6
+ github.com/stretchr/testify v1.10.0 /go.mod h1:r2ic/lqez/lEtzL7wO/rwa5dbSLXVDPFyf8C91i36aY =
7
+ github.com/theory/jsonpath v0.10.0 h1:qjuGwjcWMPfYmhjDnOjP9vmGzISeRzQ/87u2GZIWLoA =
8
+ github.com/theory/jsonpath v0.10.0 /go.mod h1:yv+crL58A+g3yxLr1sbOyn8H+L/6kS4AMXlXeVGOuNU =
9
+ gopkg.in/yaml.v3 v3.0.1 h1:fxVm/GzAzEWqLHuvctI91KS9hhNmmWOoWu0XTYJS7CA =
10
+ gopkg.in/yaml.v3 v3.0.1 /go.mod h1:K4uyk7z7BCEPqu6E+C64Yfv1cQ7kz7rIZviUmN+EgEM =
Original file line number Diff line number Diff line change
1
+ // Copyright 2020 VMware, Inc.
2
+ // SPDX-License-Identifier: GPL-3.0
3
+
4
+ package main
5
+
6
+ import (
7
+ "encoding/json"
8
+ "fmt"
9
+ "io"
10
+ "os"
11
+
12
+ "github.com/theory/jsonpath"
13
+ )
14
+
15
+ func main () {
16
+ selector := os .Args [1 ]
17
+
18
+ data , err := io .ReadAll (os .Stdin )
19
+ if err != nil {
20
+ fmt .Fprintln (os .Stderr , err )
21
+ os .Exit (1 )
22
+ }
23
+
24
+ var json_data any
25
+ if err := json .Unmarshal ([]byte (data ), & json_data ); err != nil {
26
+ fmt .Fprintln (os .Stderr , err )
27
+ os .Exit (2 )
28
+ }
29
+
30
+ path , err := jsonpath .Parse (selector )
31
+ if err != nil {
32
+ fmt .Fprintln (os .Stderr , err )
33
+ os .Exit (2 )
34
+ }
35
+
36
+ json_result , err := json .Marshal (path .Select (json_data ))
37
+ if err != nil {
38
+ fmt .Fprintln (os .Stderr , err )
39
+ os .Exit (2 )
40
+ }
41
+ fmt .Println (string (json_result ))
42
+ }
Original file line number Diff line number Diff line change
1
+ #! /bin/bash
2
+ set -euo pipefail
3
+
4
+ readonly script_dir=" $( cd " $( dirname " ${BASH_SOURCE[0]} " ) " && pwd ) "
5
+
6
+ " $script_dir " /build/main " $@ "
Original file line number Diff line number Diff line change
1
+ #! /usr/bin/env bash
2
+ set -euo pipefail
3
+
4
+ cd " $( dirname " $BASH_SOURCE [0]" ) "
5
+ go get -u
You can’t perform that action at this time.
0 commit comments