libf 5 months ago
parent
commit
74680e9235
4 changed files with 46 additions and 6 deletions
  1. 33 0
      bignum/bignum_test.go
  2. 5 4
      go.mod
  3. 6 0
      go.sum
  4. 2 2
      hashmap/hashmap_test.go

+ 33 - 0
bignum/bignum_test.go

@@ -0,0 +1,33 @@
+package bignum_test
+
+import (
+	"fmt"
+	"math/big"
+	"testing"
+)
+
+func Test1(t *testing.T) {
+	a := big.NewInt(1)
+	for i := 1; i <= 100; i++ {
+		a.Mul(a, big.NewInt(int64(i)))
+		fmt.Println(i, "! = ", a)
+	}
+}
+
+func Test2(t *testing.T) {
+	a := big.NewFloat(0)
+	b := big.NewFloat(1)
+	c := big.NewFloat(1)
+	d := big.NewFloat(4)
+	e := big.NewFloat(1)
+	for i := 1; i <= 10000000; i++ {
+		n := 2*i - 1
+		if i%2 == 0 {
+			n = -n
+		}
+		b.Quo(c, big.NewFloat(float64(n)))
+		a.Add(a, b)
+		e.Mul(d, a)
+		fmt.Println("[", i, "] = ", e)
+	}
+}

+ 5 - 4
go.mod

@@ -7,8 +7,11 @@ require (
 	github.com/alphadose/haxmap v1.0.0
 	github.com/cornelk/hashmap v1.0.2
 	github.com/dave/stablegob v1.0.0
+	github.com/dgryski/go-farm v0.0.0-20200201041132-a6ae2369ad13
 	github.com/google/uuid v1.3.0
+	github.com/issue9/assert v1.5.0
 	github.com/scylladb/go-set v1.0.3-0.20200225121959-cc7b2070d91e
+	github.com/vmihailenco/msgpack/v5 v5.4.1
 	golang.org/x/sync v0.1.0
 	gopkg.in/src-d/go-billy.v4 v4.3.2
 	gopkg.in/yaml.v3 v3.0.1
@@ -53,7 +56,6 @@ require (
 	github.com/ddliu/go-httpclient v0.6.6 // indirect
 	github.com/dgraph-io/badger/v3 v3.2103.2 // indirect
 	github.com/dgraph-io/ristretto v0.1.0 // indirect
-	github.com/dgryski/go-farm v0.0.0-20200201041132-a6ae2369ad13 // indirect
 	github.com/dgryski/go-rendezvous v0.0.0-20200823014737-9f7001d12a5f // indirect
 	github.com/dustin/go-humanize v1.0.1 // indirect
 	github.com/elgs/gojq v0.0.0-20201120033525-b5293fef2759 // indirect
@@ -74,7 +76,6 @@ require (
 	github.com/google/flatbuffers v2.0.0+incompatible // indirect
 	github.com/gorhill/cronexpr v0.0.0-20180427100037-88b0669f7d75 // indirect
 	github.com/hailocab/go-hostpool v0.0.0-20160125115350-e80d13ce29ed // indirect
-	github.com/issue9/assert v1.5.0 // indirect
 	github.com/jaytaylor/html2text v0.0.0-20200412013138-3577fbdbcff7 // indirect
 	github.com/jfcg/sorty v1.0.2 // indirect
 	github.com/jinzhu/now v1.1.1 // indirect
@@ -107,7 +108,7 @@ require (
 	github.com/richardlehane/msoleps v1.0.1 // indirect
 	github.com/spacemonkeygo/errors v0.0.0-20171212215202-9064522e9fd1 // indirect
 	github.com/spaolacci/murmur3 v1.1.0 // indirect
-	github.com/spf13/cast v1.5.1 // indirect
+	github.com/spf13/cast v1.6.0 // indirect
 	github.com/ssor/bom v0.0.0-20170718123548-6386211fdfcf // indirect
 	github.com/tidwall/btree v0.6.2-0.20211006233821-d66d463f216d // indirect
 	github.com/tidwall/match v1.0.3 // indirect
@@ -117,7 +118,6 @@ require (
 	github.com/tidwall/rhh v1.1.1 // indirect
 	github.com/tidwall/shardmap v0.0.0-20190927132224-c190691bd211 // indirect
 	github.com/tidwall/uhatools v0.4.1 // indirect
-	github.com/vmihailenco/msgpack/v5 v5.3.5 // indirect
 	github.com/vmihailenco/tagparser/v2 v2.0.0 // indirect
 	github.com/willf/bitset v1.1.10 // indirect
 	github.com/willf/bloom v2.0.3+incompatible // indirect
@@ -149,6 +149,7 @@ require (
 
 require (
 	git.wecise.com/wecise/odbserver v0.0.0-20231013120920-22461e64166f
+	git.wecise.com/wecise/util v0.0.0-20241210082506-492c702cdf60
 	github.com/coreos/go-semver v0.3.0 // indirect
 	github.com/coreos/go-systemd/v22 v22.3.2 // indirect
 	github.com/fatih/color v1.9.0 // indirect

+ 6 - 0
go.sum

@@ -11,6 +11,8 @@ git.wecise.com/wecise/odbserver v0.0.0-20231013120920-22461e64166f h1:yq7H/R/dnC
 git.wecise.com/wecise/odbserver v0.0.0-20231013120920-22461e64166f/go.mod h1:V84qS9CLdZVwezH2pnFS3NESt6lXy5+L5o76bAqg1uM=
 git.wecise.com/wecise/sqlite v1.23.1 h1:SsTNLgEA/J94N7k3ieJWFc91j2ewu6G9EU4pOiWf0Gc=
 git.wecise.com/wecise/sqlite v1.23.1/go.mod h1:Ae/T7KJu9Ks8+l94N/nglV2Vdr3bEaLXk6amum/O9Y0=
+git.wecise.com/wecise/util v0.0.0-20241210082506-492c702cdf60 h1:okHg+1JIxTqoPnFrDQN+X/wILW9ZhUwV5uz+XXrV65k=
+git.wecise.com/wecise/util v0.0.0-20241210082506-492c702cdf60/go.mod h1:jvQwP46pybS4l6VpsEr1PJRAB9/OiPEuSVuXIUUCqsk=
 github.com/BurntSushi/toml v0.3.1/go.mod h1:xHWCNGjB5oqiDr8zfno3MHue2Ht5sIBksp03qcyfWMU=
 github.com/BurntSushi/xgb v0.0.0-20160522181843-27f122750802/go.mod h1:IVnqGOEym/WlBOVXweHU+Q+/VP0lqqI8lqeDx9IjBqo=
 github.com/EndFirstCorp/peekingReader v0.0.0-20171012052444-257fb6f1a1a6 h1:t27CGFMv8DwGwqRPEa2VNof5I/aZwO6q2gfJhN8q0U4=
@@ -338,6 +340,8 @@ github.com/spf13/afero v1.1.2/go.mod h1:j4pytiNVoe2o6bmDsKpLACNPDBIoEAkihy7loJ1B
 github.com/spf13/cast v1.3.0/go.mod h1:Qx5cxh0v+4UWYiBimWS+eyWzqEqokIECu5etghLkUJE=
 github.com/spf13/cast v1.5.1 h1:R+kOtfhWQE6TVQzY+4D7wJLBgkdVasCEFxSUBYBYIlA=
 github.com/spf13/cast v1.5.1/go.mod h1:b9PdjNptOpzXr7Rq1q9gJML/2cdGQAo69NKzQ10KN48=
+github.com/spf13/cast v1.6.0 h1:GEiTHELF+vaR5dhz3VqZfFSzZjYbgeKDpBxQVS4GYJ0=
+github.com/spf13/cast v1.6.0/go.mod h1:ancEpBxwJDODSW/UG4rDrAqiKolqNNh2DX3mk86cAdo=
 github.com/spf13/cobra v0.0.5/go.mod h1:3K3wKZymM7VvHMDS9+Akkh4K60UwM26emMESw8tLCHU=
 github.com/spf13/jwalterweatherman v1.0.0/go.mod h1:cQK4TGJAtQXfYWX+Ddv3mKDzgVb68N+wFjFa4jdeBTo=
 github.com/spf13/pflag v1.0.3/go.mod h1:DYY7MBk1bdzusC3SYhjObp+wFpr4gzcvqqNjLnInEg4=
@@ -379,6 +383,8 @@ github.com/vcaesar/tt v0.11.0 h1:obQecjgbnAxxC6OYGY6yDvhGRW2PR5wD8Ma2uJH3WGA=
 github.com/vcaesar/tt v0.11.0/go.mod h1:GHPxQYhn+7OgKakRusH7KJ0M5MhywoeLb8Fcffs/Gtg=
 github.com/vmihailenco/msgpack/v5 v5.3.5 h1:5gO0H1iULLWGhs2H5tbAHIZTV8/cYafcFOr9znI5mJU=
 github.com/vmihailenco/msgpack/v5 v5.3.5/go.mod h1:7xyJ9e+0+9SaZT0Wt1RGleJXzli6Q/V5KbhBonMG9jc=
+github.com/vmihailenco/msgpack/v5 v5.4.1 h1:cQriyiUvjTwOHg8QZaPihLWeRAAVoCpE00IUPn0Bjt8=
+github.com/vmihailenco/msgpack/v5 v5.4.1/go.mod h1:GaZTsDaehaPpQVyxrf5mtQlH+pc21PIudVV/E3rRQok=
 github.com/vmihailenco/tagparser/v2 v2.0.0 h1:y09buUbR+b5aycVFQs/g70pqKVZNBmxwAhO7/IwNM9g=
 github.com/vmihailenco/tagparser/v2 v2.0.0/go.mod h1:Wri+At7QHww0WTrCBeu4J6bNtoV6mEfg5OIWRZA9qds=
 github.com/willf/bitset v1.1.10 h1:NotGKqX0KwQ72NUzqrjZq5ipPNDQex9lo3WpaS8L2sc=

+ 2 - 2
hashmap/hashmap_test.go

@@ -5,7 +5,7 @@ import (
 	"sync"
 	"testing"
 
-	"git.wecise.com/wecise/common/matrix/cmap"
+	"git.wecise.com/wecise/util/cmap"
 	"github.com/alphadose/haxmap"
 	"github.com/cornelk/hashmap"
 )
@@ -86,7 +86,7 @@ func BenchmarkCMap(t *testing.B) {
 	// BenchmarkCMap-8   	1000000000	         0.03648 ns/op	       0 B/op	       0 allocs/op
 	// PASS
 	// ok  	test/hashmap	0.769s
-	m := cmap.New()
+	m := cmap.New[string, any]()
 	t.StartTimer()
 	for i := 0; i < 100000; i++ {
 		s := fmt.Sprint(i)