MCPcopy
hub / github.com/TomWright/dasel / LessThan

Method LessThan

model/value_comparison.go:82–141  ·  view source on GitHub ↗

LessThan compares two values.

(other *Value)

Source from the content-addressed store, hash-verified

80
81// LessThan compares two values.
82func (v *Value) LessThan(other *Value) (*Value, error) {
83 if v.IsInt() && other.IsInt() {
84 a, err := v.IntValue()
85 if err != nil {
86 return nil, err
87 }
88 b, err := other.IntValue()
89 if err != nil {
90 return nil, err
91 }
92 return NewValue(a < b), nil
93 }
94 if v.IsFloat() && other.IsFloat() {
95 a, err := v.FloatValue()
96 if err != nil {
97 return nil, err
98 }
99 b, err := other.FloatValue()
100 if err != nil {
101 return nil, err
102 }
103 return NewValue(a < b), nil
104 }
105 if v.IsInt() && other.IsFloat() {
106 a, err := v.IntValue()
107 if err != nil {
108 return nil, err
109 }
110 b, err := other.FloatValue()
111 if err != nil {
112 return nil, err
113 }
114 return NewValue(float64(a) < b), nil
115 }
116 if v.IsFloat() && other.IsInt() {
117 a, err := v.FloatValue()
118 if err != nil {
119 return nil, err
120 }
121 b, err := other.IntValue()
122 if err != nil {
123 return nil, err
124 }
125 return NewValue(a < float64(b)), nil
126 }
127
128 if v.IsString() && other.IsString() {
129 a, err := v.StringValue()
130 if err != nil {
131 return nil, err
132 }
133 b, err := other.StringValue()
134 if err != nil {
135 return nil, err
136 }
137 return NewValue(a < b), nil
138 }
139

Callers 6

CompareMethod · 0.95
LessThanOrEqualMethod · 0.95
GreaterThanOrEqualMethod · 0.95
TestValue_LessThanFunction · 0.80
initFunction · 0.80
func_min.goFile · 0.80

Calls 7

IsIntMethod · 0.95
IntValueMethod · 0.95
IsFloatMethod · 0.95
FloatValueMethod · 0.95
IsStringMethod · 0.95
StringValueMethod · 0.95
NewValueFunction · 0.85

Tested by 1

TestValue_LessThanFunction · 0.64