Skip to content

Commit 1ab645f

Browse files
elsesiyrghetia
authored andcommitted
Consistently use pointer receivers for core.Number (#375)
Change all occurrences of value to pointer receivers Add meta sys files to .gitignore Code cleanup e.g. - Don't capitalize error statements - Fix ignored errors - Fix ambiguous variable naming - Remove unnecessary type casting - Use named params Fix #306
1 parent 30795ef commit 1ab645f

File tree

33 files changed

+103
-95
lines changed

33 files changed

+103
-95
lines changed

.gitignore

+3
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,6 @@
1+
.DS_Store
2+
Thumbs.db
3+
14
.tools/
25
.idea/
36
.vscode/

api/core/key_test.go

+1-1
Original file line numberDiff line numberDiff line change
@@ -40,7 +40,7 @@ func TestValue(t *testing.T) {
4040
name: "Key.Float64() correctly returns keys's internal float64 value",
4141
value: k.Float64(42.1).Value,
4242
wantType: core.FLOAT64,
43-
wantValue: float64(42.1),
43+
wantValue: 42.1,
4444
},
4545
{
4646
name: "Key.Int32() correctly returns keys's internal int32 value",

api/core/number.go

+21-21
Original file line numberDiff line numberDiff line change
@@ -94,31 +94,31 @@ func NewUint64Number(u uint64) Number {
9494
// - as x
9595

9696
// AsNumber gets the Number.
97-
func (n Number) AsNumber() Number {
98-
return n
97+
func (n *Number) AsNumber() Number {
98+
return *n
9999
}
100100

101101
// AsRaw gets the uninterpreted raw value. Might be useful for some
102102
// atomic operations.
103-
func (n Number) AsRaw() uint64 {
104-
return uint64(n)
103+
func (n *Number) AsRaw() uint64 {
104+
return uint64(*n)
105105
}
106106

107107
// AsInt64 assumes that the value contains an int64 and returns it as
108108
// such.
109-
func (n Number) AsInt64() int64 {
109+
func (n *Number) AsInt64() int64 {
110110
return rawToInt64(n.AsRaw())
111111
}
112112

113113
// AsFloat64 assumes that the measurement value contains a float64 and
114114
// returns it as such.
115-
func (n Number) AsFloat64() float64 {
115+
func (n *Number) AsFloat64() float64 {
116116
return rawToFloat64(n.AsRaw())
117117
}
118118

119119
// AsUint64 assumes that the value contains an uint64 and returns it
120120
// as such.
121-
func (n Number) AsUint64() uint64 {
121+
func (n *Number) AsUint64() uint64 {
122122
return rawToUint64(n.AsRaw())
123123
}
124124

@@ -183,7 +183,7 @@ func (n *Number) AsUint64Ptr() *uint64 {
183183

184184
// CoerceToInt64 casts the number to int64. May result in
185185
// data/precision loss.
186-
func (n Number) CoerceToInt64(kind NumberKind) int64 {
186+
func (n *Number) CoerceToInt64(kind NumberKind) int64 {
187187
switch kind {
188188
case Int64NumberKind:
189189
return n.AsInt64()
@@ -199,7 +199,7 @@ func (n Number) CoerceToInt64(kind NumberKind) int64 {
199199

200200
// CoerceToFloat64 casts the number to float64. May result in
201201
// data/precision loss.
202-
func (n Number) CoerceToFloat64(kind NumberKind) float64 {
202+
func (n *Number) CoerceToFloat64(kind NumberKind) float64 {
203203
switch kind {
204204
case Int64NumberKind:
205205
return float64(n.AsInt64())
@@ -215,7 +215,7 @@ func (n Number) CoerceToFloat64(kind NumberKind) float64 {
215215

216216
// CoerceToUint64 casts the number to uint64. May result in
217217
// data/precision loss.
218-
func (n Number) CoerceToUint64(kind NumberKind) uint64 {
218+
func (n *Number) CoerceToUint64(kind NumberKind) uint64 {
219219
switch kind {
220220
case Int64NumberKind:
221221
return uint64(n.AsInt64())
@@ -498,7 +498,7 @@ func (n *Number) CompareAndSwapUint64(ou, nu uint64) bool {
498498
// 0 if the numbers are equal
499499
// -1 if the subject `n` is less than the argument `nn`
500500
// +1 if the subject `n` is greater than the argument `nn`
501-
func (n Number) CompareNumber(kind NumberKind, nn Number) int {
501+
func (n *Number) CompareNumber(kind NumberKind, nn Number) int {
502502
switch kind {
503503
case Int64NumberKind:
504504
return n.CompareInt64(nn.AsInt64())
@@ -514,7 +514,7 @@ func (n Number) CompareNumber(kind NumberKind, nn Number) int {
514514

515515
// CompareRaw compares two numbers, where one is input as a raw
516516
// uint64, interpreting both values as a `kind` of number.
517-
func (n Number) CompareRaw(kind NumberKind, r uint64) int {
517+
func (n *Number) CompareRaw(kind NumberKind, r uint64) int {
518518
return n.CompareNumber(kind, NewNumberFromRaw(r))
519519
}
520520

@@ -523,7 +523,7 @@ func (n Number) CompareRaw(kind NumberKind, r uint64) int {
523523
// typical result of the compare function: -1 if the value is less
524524
// than the other, 0 if both are equal, 1 if the value is greater than
525525
// the other.
526-
func (n Number) CompareInt64(i int64) int {
526+
func (n *Number) CompareInt64(i int64) int {
527527
this := n.AsInt64()
528528
if this < i {
529529
return -1
@@ -540,7 +540,7 @@ func (n Number) CompareInt64(i int64) int {
540540
// greater than the other.
541541
//
542542
// Do not compare NaN values.
543-
func (n Number) CompareFloat64(f float64) int {
543+
func (n *Number) CompareFloat64(f float64) int {
544544
this := n.AsFloat64()
545545
if this < f {
546546
return -1
@@ -555,7 +555,7 @@ func (n Number) CompareFloat64(f float64) int {
555555
// typical result of the compare function: -1 if the value is less
556556
// than the other, 0 if both are equal, 1 if the value is greater than
557557
// the other.
558-
func (n Number) CompareUint64(u uint64) int {
558+
func (n *Number) CompareUint64(u uint64) int {
559559
this := n.AsUint64()
560560
if this < u {
561561
return -1
@@ -568,17 +568,17 @@ func (n Number) CompareUint64(u uint64) int {
568568
// - relations to zero
569569

570570
// IsPositive returns true if the actual value is greater than zero.
571-
func (n Number) IsPositive(kind NumberKind) bool {
571+
func (n *Number) IsPositive(kind NumberKind) bool {
572572
return n.compareWithZero(kind) > 0
573573
}
574574

575575
// IsNegative returns true if the actual value is less than zero.
576-
func (n Number) IsNegative(kind NumberKind) bool {
576+
func (n *Number) IsNegative(kind NumberKind) bool {
577577
return n.compareWithZero(kind) < 0
578578
}
579579

580580
// IsZero returns true if the actual value is equal to zero.
581-
func (n Number) IsZero(kind NumberKind) bool {
581+
func (n *Number) IsZero(kind NumberKind) bool {
582582
return n.compareWithZero(kind) == 0
583583
}
584584

@@ -587,7 +587,7 @@ func (n Number) IsZero(kind NumberKind) bool {
587587
// Emit returns a string representation of the raw value of the
588588
// Number. A %d is used for integral values, %f for floating point
589589
// values.
590-
func (n Number) Emit(kind NumberKind) string {
590+
func (n *Number) Emit(kind NumberKind) string {
591591
switch kind {
592592
case Int64NumberKind:
593593
return fmt.Sprintf("%d", n.AsInt64())
@@ -602,7 +602,7 @@ func (n Number) Emit(kind NumberKind) string {
602602

603603
// AsInterface returns the number as an interface{}, typically used
604604
// for NumberKind-correct JSON conversion.
605-
func (n Number) AsInterface(kind NumberKind) interface{} {
605+
func (n *Number) AsInterface(kind NumberKind) interface{} {
606606
switch kind {
607607
case Int64NumberKind:
608608
return n.AsInt64()
@@ -617,7 +617,7 @@ func (n Number) AsInterface(kind NumberKind) interface{} {
617617

618618
// - private stuff
619619

620-
func (n Number) compareWithZero(kind NumberKind) int {
620+
func (n *Number) compareWithZero(kind NumberKind) int {
621621
switch kind {
622622
case Int64NumberKind:
623623
return n.CompareInt64(0)

api/core/number_test.go

+6-3
Original file line numberDiff line numberDiff line change
@@ -161,7 +161,10 @@ func TestNumberZero(t *testing.T) {
161161
}
162162

163163
func TestNumberAsInterface(t *testing.T) {
164-
require.Equal(t, int64(10), NewInt64Number(10).AsInterface(Int64NumberKind).(int64))
165-
require.Equal(t, float64(11.11), NewFloat64Number(11.11).AsInterface(Float64NumberKind).(float64))
166-
require.Equal(t, uint64(100), NewUint64Number(100).AsInterface(Uint64NumberKind).(uint64))
164+
i64 := NewInt64Number(10)
165+
f64 := NewFloat64Number(11.11)
166+
u64 := NewUint64Number(100)
167+
require.Equal(t, int64(10), (&i64).AsInterface(Int64NumberKind).(int64))
168+
require.Equal(t, 11.11, (&f64).AsInterface(Float64NumberKind).(float64))
169+
require.Equal(t, uint64(100), (&u64).AsInterface(Uint64NumberKind).(uint64))
167170
}

api/distributedcontext/map_test.go

+2-2
Original file line numberDiff line numberDiff line change
@@ -138,8 +138,8 @@ func TestMap(t *testing.T) {
138138
t.Errorf("Expected kv %v, but not found", kv)
139139
return true
140140
})
141-
if len, exp := got.Len(), len(testcase.wantKVs); len != exp {
142-
t.Errorf("+got: %d, -want: %d", len, exp)
141+
if l, exp := got.Len(), len(testcase.wantKVs); l != exp {
142+
t.Errorf("+got: %d, -want: %d", l, exp)
143143
}
144144
}
145145
}

api/global/global_test.go

-1
Original file line numberDiff line numberDiff line change
@@ -41,7 +41,6 @@ func (*testMeterProvider) Meter(_ string) metric.Meter {
4141
}
4242

4343
func TestMulitpleGlobalTracerProvider(t *testing.T) {
44-
4544
p1 := testTraceProvider{}
4645
p2 := trace.NoopProvider{}
4746
global.SetTraceProvider(&p1)

api/propagators/b3_propagator_benchmark_test.go

+2-2
Original file line numberDiff line numberDiff line change
@@ -53,7 +53,7 @@ func BenchmarkExtractB3(b *testing.B) {
5353
}
5454

5555
for _, tg := range testGroup {
56-
propagator := propagators.B3{tg.singleHeader}
56+
propagator := propagators.B3{SingleHeader: tg.singleHeader}
5757
for _, tt := range tg.tests {
5858
traceBenchmark(tg.name+"/"+tt.name, b, func(b *testing.B) {
5959
ctx := context.Background()
@@ -97,7 +97,7 @@ func BenchmarkInjectB3(b *testing.B) {
9797

9898
for _, tg := range testGroup {
9999
id = 0
100-
propagator := propagators.B3{tg.singleHeader}
100+
propagator := propagators.B3{SingleHeader: tg.singleHeader}
101101
for _, tt := range tg.tests {
102102
traceBenchmark(tg.name+"/"+tt.name, b, func(b *testing.B) {
103103
req, _ := http.NewRequest("GET", "http://example.com", nil)

api/propagators/b3_propagator_test.go

+5-7
Original file line numberDiff line numberDiff line change
@@ -55,7 +55,7 @@ func TestExtractB3(t *testing.T) {
5555
}
5656

5757
for _, tg := range testGroup {
58-
propagator := propagators.B3{tg.singleHeader}
58+
propagator := propagators.B3{SingleHeader: tg.singleHeader}
5959
for _, tt := range tg.tests {
6060
t.Run(tt.name, func(t *testing.T) {
6161
req, _ := http.NewRequest("GET", "http://example.com", nil)
@@ -99,7 +99,7 @@ func TestInjectB3(t *testing.T) {
9999

100100
for _, tg := range testGroup {
101101
id = 0
102-
propagator := propagators.B3{tg.singleHeader}
102+
propagator := propagators.B3{SingleHeader: tg.singleHeader}
103103
for _, tt := range tg.tests {
104104
t.Run(tt.name, func(t *testing.T) {
105105
req, _ := http.NewRequest("GET", "http://example.com", nil)
@@ -117,21 +117,19 @@ func TestInjectB3(t *testing.T) {
117117
t.Errorf("%s: %s, header=%s: -got +want %s", tg.name, tt.name, h, diff)
118118
}
119119
}
120-
wantOk := false
121120
for _, h := range tt.doNotWantHeaders {
122121
v, gotOk := req.Header[h]
123-
if diff := cmp.Diff(gotOk, wantOk); diff != "" {
122+
if diff := cmp.Diff(gotOk, false); diff != "" {
124123
t.Errorf("%s: %s, header=%s: -got +want %s, value=%s", tg.name, tt.name, h, diff, v)
125124
}
126-
127125
}
128126
})
129127
}
130128
}
131129
}
132130

133131
func TestB3Propagator_GetAllKeys(t *testing.T) {
134-
propagator := propagators.B3{false}
132+
propagator := propagators.B3{SingleHeader: false}
135133
want := []string{
136134
propagators.B3TraceIDHeader,
137135
propagators.B3SpanIDHeader,
@@ -144,7 +142,7 @@ func TestB3Propagator_GetAllKeys(t *testing.T) {
144142
}
145143

146144
func TestB3PropagatorWithSingleHeader_GetAllKeys(t *testing.T) {
147-
propagator := propagators.B3{true}
145+
propagator := propagators.B3{SingleHeader: true}
148146
want := []string{
149147
propagators.B3SingleHeader,
150148
}

bridge/opentracing/bridge.go

+3-3
Original file line numberDiff line numberDiff line change
@@ -380,7 +380,7 @@ func (t *BridgeTracer) ContextWithSpanHook(ctx context.Context, span ot.Span) co
380380

381381
func otTagsToOtelAttributesKindAndError(tags map[string]interface{}) ([]otelcore.KeyValue, oteltrace.SpanKind, bool) {
382382
kind := oteltrace.SpanKindInternal
383-
error := false
383+
err := false
384384
var pairs []otelcore.KeyValue
385385
for k, v := range tags {
386386
switch k {
@@ -399,13 +399,13 @@ func otTagsToOtelAttributesKindAndError(tags map[string]interface{}) ([]otelcore
399399
}
400400
case string(otext.Error):
401401
if b, ok := v.(bool); ok && b {
402-
error = true
402+
err = true
403403
}
404404
default:
405405
pairs = append(pairs, otTagToOtelCoreKeyValue(k, v))
406406
}
407407
}
408-
return pairs, kind, error
408+
return pairs, kind, err
409409
}
410410

411411
func otTagToOtelCoreKeyValue(k string, v interface{}) otelcore.KeyValue {

bridge/opentracing/wrapper.go

+1-1
Original file line numberDiff line numberDiff line change
@@ -19,7 +19,7 @@ import (
1919

2020
oteltrace "go.opentelemetry.io/otel/api/trace"
2121

22-
migration "go.opentelemetry.io/otel/bridge/opentracing/migration"
22+
"go.opentelemetry.io/otel/bridge/opentracing/migration"
2323
)
2424

2525
type WrapperProvider struct {

example/grpc/client/main.go

+3-3
Original file line numberDiff line numberDiff line change
@@ -36,7 +36,7 @@ func main() {
3636
if err != nil {
3737
log.Fatalf("did not connect: %s", err)
3838
}
39-
defer conn.Close()
39+
defer func() { _ = conn.Close() }()
4040

4141
c := api.NewHelloServiceClient(conn)
4242

@@ -45,8 +45,8 @@ func main() {
4545
"client-id", "web-api-client-us-east-1",
4646
"user-id", "some-test-user-id",
4747
)
48-
context := metadata.NewOutgoingContext(context.Background(), md)
49-
response, err := c.SayHello(context, &api.HelloRequest{Greeting: "World"})
48+
ctx := metadata.NewOutgoingContext(context.Background(), md)
49+
response, err := c.SayHello(ctx, &api.HelloRequest{Greeting: "World"})
5050
if err != nil {
5151
log.Fatalf("Error when calling SayHello: %s", err)
5252
}

example/grpc/middleware/tracing/tracing.go

+2-2
Original file line numberDiff line numberDiff line change
@@ -81,8 +81,8 @@ func UnaryClientInterceptor(ctx context.Context, method string, req, reply inter
8181

8282
func setTraceStatus(ctx context.Context, err error) {
8383
if err != nil {
84-
status, _ := status.FromError(err)
85-
trace.CurrentSpan(ctx).SetStatus(status.Code())
84+
s, _ := status.FromError(err)
85+
trace.CurrentSpan(ctx).SetStatus(s.Code())
8686
} else {
8787
trace.CurrentSpan(ctx).SetStatus(codes.OK)
8888
}

example/http-stackdriver/client/client.go

+1-1
Original file line numberDiff line numberDiff line change
@@ -81,7 +81,7 @@ func main() {
8181
panic(err)
8282
}
8383
body, err = ioutil.ReadAll(res.Body)
84-
res.Body.Close()
84+
_ = res.Body.Close()
8585
trace.CurrentSpan(ctx).SetStatus(codes.OK)
8686

8787
return err

example/http/client/client.go

+1-1
Original file line numberDiff line numberDiff line change
@@ -76,7 +76,7 @@ func main() {
7676
panic(err)
7777
}
7878
body, err = ioutil.ReadAll(res.Body)
79-
res.Body.Close()
79+
_ = res.Body.Close()
8080
trace.CurrentSpan(ctx).SetStatus(codes.OK)
8181

8282
return err

exporter/metric/internal/statsd/conn.go

+1-1
Original file line numberDiff line numberDiff line change
@@ -83,7 +83,7 @@ const (
8383
var (
8484
_ export.Exporter = &Exporter{}
8585

86-
ErrInvalidScheme = fmt.Errorf("Invalid statsd transport")
86+
ErrInvalidScheme = fmt.Errorf("invalid statsd transport")
8787
)
8888

8989
// NewExport returns a common implementation for exporters that Export

exporter/metric/internal/statsd/conn_test.go

+1-1
Original file line numberDiff line numberDiff line change
@@ -148,7 +148,7 @@ timer.B.D:%s|ms
148148

149149
var vfmt string
150150
if nkind == core.Int64NumberKind {
151-
fv := float64(value)
151+
fv := value
152152
vfmt = strconv.FormatInt(int64(fv), 10)
153153
} else {
154154
vfmt = strconv.FormatFloat(value, 'g', -1, 64)

exporter/metric/stdout/stdout.go

-1
Original file line numberDiff line numberDiff line change
@@ -175,7 +175,6 @@ func (e *Exporter) Export(_ context.Context, checkpointSet export.CheckpointSet)
175175
}
176176
}
177177
}
178-
179178
} else if lv, ok := agg.(aggregator.LastValue); ok {
180179
if value, timestamp, err := lv.LastValue(); err != nil {
181180
if err == aggregator.ErrNoLastValue {

exporter/trace/jaeger/jaeger_test.go

+1-1
Original file line numberDiff line numberDiff line change
@@ -155,7 +155,7 @@ func Test_spanDataToThrift(t *testing.T) {
155155
messageEventValue := "event-test"
156156
keyValue := "value"
157157
statusCodeValue := int64(2)
158-
doubleValue := float64(123.456)
158+
doubleValue := 123.456
159159
boolTrue := true
160160
statusMessage := "Unknown"
161161

0 commit comments

Comments
 (0)