@@ -25,6 +25,8 @@ SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
2525
2626package linq.lamdba
2727
28+ import linq.lamdba.exceptions.DivisionByZeroException
29+
2830/* *
2931 * Created by Tom Needham on 03/03/2016.
3032 */
@@ -36,23 +38,318 @@ open class DefaultLambdaFunctions {
3638 }
3739 @JvmStatic()
3840 fun InRange (a : Int , b : Int ) : Boolean {
39- return a <= b;
41+ return a <= b
4042 }
4143 @JvmStatic()
4244 fun LessThan (a : Int , b : Int ) : Boolean {
43- return a < b;
45+ return a < b
4446 }
4547 @JvmStatic()
4648 fun MoreThan (a : Int , b : Int ) : Boolean {
47- return a > b;
49+ return a > b
4850 }
4951 @JvmStatic()
5052 fun LessThanOrEqual (a : Int , b : Int ) : Boolean {
51- return a <= b;
53+ return a <= b
5254 }
5355 @JvmStatic()
5456 fun MoreThanOrEqual (a : Int , b : Int ) : Boolean {
55- return a >= b;
57+ return a >= b
58+ }
59+ @JvmStatic()
60+ fun Equal (a : Int , b : Int ) : Boolean {
61+ return a == b
62+ }
63+ @JvmStatic()
64+ fun NotEqual (a : Int , b : Int ) : Boolean {
65+ return a != b
66+ }
67+ @JvmStatic()
68+ fun LeftShift (a : Int , b : Int ) : Int {
69+ return a.shl(b)
70+ }
71+ @JvmStatic()
72+ fun SignedRightShift (a : Int , b : Int ) : Int {
73+ return a.shr(b)
74+ }
75+ @JvmStatic()
76+ fun UnsignedShiftRight (a : Int , b : Int ) : Int {
77+ return a.ushr(b)
78+ }
79+ @JvmStatic()
80+ fun Add (a : Int , b : Int ) : Int {
81+ return a + b
82+ }
83+ @JvmStatic()
84+ fun Subtract (a : Int , b : Int ) : Int {
85+ return a - b
86+ }
87+ @JvmStatic()
88+ fun Multiply (a : Int , b : Int ) : Int {
89+ return a * b
90+ }
91+ @JvmStatic()
92+ fun Divide (a : Int , b : Int ) : Int {
93+ if (b == 0 )
94+ throw DivisionByZeroException ();
95+ return a / b
96+ }
97+ @JvmStatic()
98+ fun And (a : Int , b : Int ) : Int {
99+ return a.and (b)
100+ }
101+ @JvmStatic()
102+ fun Or (a : Int , b : Int ) : Int {
103+ return a.or (b)
104+ }
105+ @JvmStatic()
106+ fun Mod (a : Int , b : Int ) : Int {
107+ return a.mod(b)
108+ }
109+ @JvmStatic()
110+ fun Xor (a : Int , b : Int ) : Int {
111+ return a.xor(b)
112+ }
113+ @JvmStatic()
114+ fun Pow (a : Int , b : Int ) : Int {
115+ return Math .pow(a.toDouble(),b.toDouble()).toInt()
116+ }
117+
118+ @JvmStatic()
119+ fun InRange (a : Short , b : Short ) : Boolean {
120+ return a <= b
121+ }
122+ @JvmStatic()
123+ fun LessThan (a : Short , b : Short ) : Boolean {
124+ return a < b
125+ }
126+ @JvmStatic()
127+ fun MoreThan (a : Short , b : Short ) : Boolean {
128+ return a > b
129+ }
130+ @JvmStatic()
131+ fun LessThanOrEqual (a : Short , b : Short ) : Boolean {
132+ return a <= b
133+ }
134+ @JvmStatic()
135+ fun MoreThanOrEqual (a : Short , b : Short ) : Boolean {
136+ return a >= b
137+ }
138+ @JvmStatic()
139+ fun Equal (a : Short , b : Short ) : Boolean {
140+ return a == b
141+ }
142+ @JvmStatic()
143+ fun NotEqual (a : Short , b : Short ) : Boolean {
144+ return a != b
145+ }
146+ @JvmStatic()
147+ fun Add (a : Short , b : Short ) : Short {
148+ return (a + b).toShort()
149+ }
150+ @JvmStatic()
151+ fun Subtract (a : Short , b : Short ) : Short {
152+ return (a - b).toShort()
153+ }
154+ @JvmStatic()
155+ fun Multiply (a : Short , b : Short ) : Short {
156+ return (a * b).toShort()
157+ }
158+ @JvmStatic()
159+ fun Divide (a : Short , b : Short ) : Short {
160+ if ((b == 0 .toShort()))
161+ throw DivisionByZeroException ();
162+ return (a / b).toShort()
163+ }
164+ @JvmStatic()
165+ fun Mod (a : Short , b : Short ) : Short {
166+ return (a.mod(b)).toShort()
167+ }
168+ @JvmStatic()
169+ fun Pow (a : Short , b : Short ) : Short {
170+ return Math .pow(a.toDouble(),b.toDouble()).toShort()
171+ }
172+
173+ @JvmStatic()
174+ fun InRange (a : Long , b : Long ) : Boolean {
175+ return a <= b
176+ }
177+ @JvmStatic()
178+ fun LessThan (a : Long , b : Long ) : Boolean {
179+ return a < b
180+ }
181+ @JvmStatic()
182+ fun MoreThan (a : Long , b : Long ) : Boolean {
183+ return a > b
184+ }
185+ @JvmStatic()
186+ fun LessThanOrEqual (a : Long , b : Long ) : Boolean {
187+ return a <= b
188+ }
189+ @JvmStatic()
190+ fun MoreThanOrEqual (a : Long , b : Long ) : Boolean {
191+ return a >= b
192+ }
193+ @JvmStatic()
194+ fun Equal (a : Long , b : Long ) : Boolean {
195+ return a == b
196+ }
197+ @JvmStatic()
198+ fun NotEqual (a : Long , b : Long ) : Boolean {
199+ return a != b
200+ }
201+ @JvmStatic()
202+ fun LeftShift (a : Long , b : Long ) : Long {
203+ return a.shl(b.toInt())
204+ }
205+ @JvmStatic()
206+ fun SignedRightShift (a : Long , b : Long ) : Long {
207+ return a.shr(b.toInt())
208+ }
209+ @JvmStatic()
210+ fun UnsignedShiftRight (a : Long , b : Long ) : Long {
211+ return a.ushr(b.toInt())
212+ }
213+ @JvmStatic()
214+ fun Add (a : Long , b : Long ) : Long {
215+ return a + b
216+ }
217+ @JvmStatic()
218+ fun Subtract (a : Long , b : Long ) : Long {
219+ return a - b
220+ }
221+ @JvmStatic()
222+ fun Multiply (a : Long , b : Long ) : Long {
223+ return a * b
224+ }
225+ @JvmStatic()
226+ fun Divide (a : Long , b : Long ) : Long {
227+ if (b == 0L )
228+ throw DivisionByZeroException ();
229+ return a / b
230+ }
231+ @JvmStatic()
232+ fun And (a : Long , b : Long ) : Long {
233+ return a.and (b)
234+ }
235+ @JvmStatic()
236+ fun Or (a : Long , b : Long ) : Long {
237+ return a.or (b)
238+ }
239+ @JvmStatic()
240+ fun Mod (a : Long , b : Long ) : Long {
241+ return a.mod(b)
242+ }
243+ @JvmStatic()
244+ fun Xor (a : Long , b : Long ) : Long {
245+ return a.xor(b)
246+ }
247+ @JvmStatic()
248+ fun Pow (a : Long , b : Long ) : Long {
249+ return Math .pow(a.toDouble(),b.toDouble()).toLong()
250+ }
251+
252+ @JvmStatic()
253+ fun InRange (a : Float , b : Float ) : Boolean {
254+ return a <= b
255+ }
256+ @JvmStatic()
257+ fun LessThan (a : Float , b : Float ) : Boolean {
258+ return a < b
259+ }
260+ @JvmStatic()
261+ fun MoreThan (a : Float , b : Float ) : Boolean {
262+ return a > b
263+ }
264+ @JvmStatic()
265+ fun LessThanOrEqual (a : Float , b : Float ) : Boolean {
266+ return a <= b
267+ }
268+ @JvmStatic()
269+ fun MoreThanOrEqual (a : Float , b : Float ) : Boolean {
270+ return a >= b
271+ }
272+ @JvmStatic()
273+ fun Equal (a : Float , b : Float ) : Boolean {
274+ return a == b
275+ }
276+ @JvmStatic()
277+ fun NotEqual (a : Float , b : Float ) : Boolean {
278+ return a != b
279+ }
280+ @JvmStatic()
281+ fun Add (a : Float , b : Float ) : Float {
282+ return a + b
283+ }
284+ @JvmStatic()
285+ fun Subtract (a : Float , b : Float ) : Float {
286+ return a - b
287+ }
288+ @JvmStatic()
289+ fun Multiply (a : Float , b : Float ) : Float {
290+ return a * b
291+ }
292+ @JvmStatic()
293+ fun Divide (a : Float , b : Float ) : Float {
294+ if (b == 0.0f )
295+ throw DivisionByZeroException ();
296+ return a / b
297+ }
298+ @JvmStatic()
299+ fun Mod (a : Float , b : Float ) : Float {
300+ return a.mod(b)
301+ }
302+
303+ @JvmStatic()
304+ fun InRange (a : Double , b : Double ) : Boolean {
305+ return a <= b
306+ }
307+ @JvmStatic()
308+ fun LessThan (a : Double , b : Double ) : Boolean {
309+ return a < b
310+ }
311+ @JvmStatic()
312+ fun MoreThan (a : Double , b : Double ) : Boolean {
313+ return a > b
314+ }
315+ @JvmStatic()
316+ fun LessThanOrEqual (a : Double , b : Double ) : Boolean {
317+ return a <= b
318+ }
319+ @JvmStatic()
320+ fun MoreThanOrEqual (a : Double , b : Double ) : Boolean {
321+ return a >= b
322+ }
323+ @JvmStatic()
324+ fun Equal (a : Double , b : Double ) : Boolean {
325+ return a == b
326+ }
327+ @JvmStatic()
328+ fun NotEqual (a : Double , b : Double ) : Boolean {
329+ return a != b
330+ }
331+ @JvmStatic()
332+ fun Add (a : Double , b : Double ) : Double {
333+ return a + b
334+ }
335+ @JvmStatic()
336+ fun Subtract (a : Double , b : Double ) : Double {
337+ return a - b
338+ }
339+ @JvmStatic()
340+ fun Multiply (a : Double , b : Double ) : Double {
341+ return a * b
342+ }
343+ @JvmStatic()
344+ fun Divide (a : Double , b : Double ) : Double {
345+ if (b == 0.0 )
346+ throw DivisionByZeroException ();
347+ return a / b
348+ }
349+ @JvmStatic()
350+ fun Mod (a : Double , b : Double ) : Double {
351+ return a.mod(b)
56352 }
353+
57354 }
58355}
0 commit comments