Skip to content

Commit

Permalink
Refactor data processing and message formatting
Browse files Browse the repository at this point in the history
Updated the JSON data structure for better readability and added more comprehensive output formatting in the main function. Utilized a single 'output' string to accumulate messages, improving code readability and efficiency.
  • Loading branch information
wneessen committed Sep 1, 2024
1 parent ab74728 commit bdd7efe
Showing 1 changed file with 30 additions and 19 deletions.
49 changes: 30 additions & 19 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -56,25 +56,36 @@ type JSONType struct {
}

func main() {
data := []byte(`{"string":"test", "int":123, "int64": 12345678901234, "float64":0, "nil":null, "bool":true}`)

var example JSONType
if err := json.Unmarshal(data, &example); err != nil {
fmt.Println("failed to unmarshal JSON:", err)
os.Exit(1)
}
data := []byte(`{
"bytes": "Ynl0ZXM=",
"bool": true,
"float32": null,
"float64":0,
"int": 123,
"int64": 12345678901234,
"nilvalue": null,
"string":"test"
}`)

var example JSONType
var output string
if err := json.Unmarshal(data, &example); err != nil {
fmt.Println("failed to unmarshal JSON:", err)
os.Exit(1)
}

if example.Bool.NotNil() {
fmt.Printf("Bool is: %t\n", example.Bool.Value())
}
if example.Float64.IsNil() {
fmt.Println("Float 32 is NIL")
}
if example.Float64.NotNil() {
fmt.Printf("Float is: %f\n", example.Float64.Value())
}
if !example.String.IsNil() {
fmt.Printf("String is: %s\n", example.String.Value())
}
if example.Bool.NotNil() {
output += fmt.Sprintf("Bool is: %t, ", example.Bool.Value())
}
if example.Float32.IsNil() {
output += "Float 32 is nil, "
}
if example.Float64.NotNil() {
output += fmt.Sprintf("Float 64 is: %f, ", example.Float64.Value())
}
if example.String.NotNil() {
output += fmt.Sprintf("String is: %s", example.String.Value())
}
fmt.Println(output)
}
```

0 comments on commit bdd7efe

Please sign in to comment.