]> Cypherpunks repositories - keks.git/commitdiff
Tcl-aware FLOAT pp master
authorSergey Matveev <stargrave@stargrave.org>
Wed, 25 Jun 2025 07:50:27 +0000 (10:50 +0300)
committerSergey Matveev <stargrave@stargrave.org>
Wed, 25 Jun 2025 07:50:27 +0000 (10:50 +0300)
go/cmd/pp/tcl.go

index fc08e325df4c3205ae1c58dab877a9c8fe442a507dedbcf5b6ada87dee845ced..5e430c3605fb9d4ea0bb8b5dfb7d0b22bfbeaa1abab87a538a5e222228cf9b95 100644 (file)
@@ -103,6 +103,17 @@ func tcl(iter *keks.Iterator, count int, inList, inMap bool) {
                                fmt.Printf("INT %d", iter.Int())
                        case types.BigInt:
                                fmt.Printf("INT %d", iter.BigInt())
                                fmt.Printf("INT %d", iter.Int())
                        case types.BigInt:
                                fmt.Printf("INT %d", iter.BigInt())
+                       case types.Float:
+                               f := iter.Float()
+                               if f.NaN {
+                                       fmt.Printf("FLOAT nan")
+                               } else if f.Pinf {
+                                       fmt.Printf("FLOAT +inf")
+                               } else if f.Ninf {
+                                       fmt.Printf("FLOAT -inf")
+                               } else {
+                                       fmt.Printf("FLOAT {%d %d}", f.M, f.E)
+                               }
                        case types.Blob:
                                blob := iter.Blob()
                                v, err := io.ReadAll(blob.Reader())
                        case types.Blob:
                                blob := iter.Blob()
                                v, err := io.ReadAll(blob.Reader())