-
Notifications
You must be signed in to change notification settings - Fork 0
/
scalar.go
96 lines (75 loc) · 2.39 KB
/
scalar.go
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
package disabled
import crypto "github.com/ThotaGopichandThota/gn-crypto1"
const marshaledScalar = "scalar"
type disabledScalar struct{}
// MarshalBinary returns a mock value
func (ds *disabledScalar) MarshalBinary() ([]byte, error) {
return []byte(marshaledScalar), nil
}
// UnmarshalBinary returns nil
func (ds *disabledScalar) UnmarshalBinary(_ []byte) error {
return nil
}
// Equal returns false
func (ds *disabledScalar) Equal(_ crypto.Scalar) (bool, error) {
return false, nil
}
// Set returns nil
func (ds *disabledScalar) Set(_ crypto.Scalar) error {
return nil
}
// Clone returns a new disabledScalar instance
func (ds *disabledScalar) Clone() crypto.Scalar {
return &disabledScalar{}
}
// SetInt64 does nothing
func (ds *disabledScalar) SetInt64(_ int64) {
}
// Zero returns a new disabledScalar instance
func (ds *disabledScalar) Zero() crypto.Scalar {
return &disabledScalar{}
}
// Add returns a new disabledScalar instance
func (ds *disabledScalar) Add(_ crypto.Scalar) (crypto.Scalar, error) {
return &disabledScalar{}, nil
}
// Sub returns a new disabledScalar instance
func (ds *disabledScalar) Sub(_ crypto.Scalar) (crypto.Scalar, error) {
return &disabledScalar{}, nil
}
// Neg returns a new disabledScalar instance
func (ds *disabledScalar) Neg() crypto.Scalar {
return &disabledScalar{}
}
// One returns a new disabledScalar instance
func (ds *disabledScalar) One() crypto.Scalar {
return &disabledScalar{}
}
// Mul returns a new disabledScalar instance
func (ds *disabledScalar) Mul(_ crypto.Scalar) (crypto.Scalar, error) {
return &disabledScalar{}, nil
}
// Div returns a new disabledScalar instance
func (ds *disabledScalar) Div(_ crypto.Scalar) (crypto.Scalar, error) {
return &disabledScalar{}, nil
}
// Inv returns a new disabledScalar instance
func (ds *disabledScalar) Inv(_ crypto.Scalar) (crypto.Scalar, error) {
return &disabledScalar{}, nil
}
// Pick returns a new disabledScalar instance
func (ds *disabledScalar) Pick() (crypto.Scalar, error) {
return &disabledScalar{}, nil
}
// SetBytes returns a new disabledScalar instance
func (ds *disabledScalar) SetBytes(_ []byte) (crypto.Scalar, error) {
return &disabledScalar{}, nil
}
// GetUnderlyingObj returns nil
func (ds *disabledScalar) GetUnderlyingObj() interface{} {
return nil
}
// IsInterfaceNil returns true if there is no value under the interface
func (ds *disabledScalar) IsInterfaceNil() bool {
return ds == nil
}