Mercurial > projects > dstep
comparison dstep/coreservices/carboncore/Math64.d @ 11:07194b026fa4
Added bindings to a couple of frameworks, new license + some other things
author | Jacob Carlborg <doob@me.com> |
---|---|
date | Sat, 01 Aug 2009 15:03:28 +0200 |
parents | |
children |
comparison
equal
deleted
inserted
replaced
10:27e00625790b | 11:07194b026fa4 |
---|---|
1 /** | |
2 * Copyright: Copyright (c) 2009 Jacob Carlborg. | |
3 * Authors: Jacob Carlborg | |
4 * Version: Initial created: Jul 21, 2009 | |
5 * License: $(LINK2 http://www.boost.org/LICENSE_1_0.txt, Boost Software License 1.0) | |
6 */ | |
7 module dstep.coreservices.carboncore.Math64; | |
8 | |
9 //import dstep.AvailabilityMacros; | |
10 import dstep.coreservices.carboncore.ConditionalMacros; | |
11 import dstep.coreservices.carboncore.MacTypes; | |
12 | |
13 extern (C) | |
14 { | |
15 long S64Max (); | |
16 long S64Min (); | |
17 long S64Add (long left, long right); | |
18 long S64Subtract (long left, long right); | |
19 long S64Negate (long value); | |
20 long S64Multiply (long left, long right); | |
21 long S64Mod (long dividend, long divisor); | |
22 long S64Divide (long dividend, long divisor, SInt64* remainder); | |
23 long S64Div (long dividend, long divisor); | |
24 long S64Set (int value); | |
25 long S64SetU (uint value); | |
26 int S32Set (long value); | |
27 ubyte S64And (long left, long right); | |
28 ubyte S64Or (long left, long right); | |
29 ubyte S64Eor (long left, long right); | |
30 ubyte S64Not (long value); | |
31 int S64Compare (long left, long right); | |
32 long S64BitwiseAnd (long left, long right); | |
33 long S64BitwiseOr (long left, long right); | |
34 long S64BitwiseEor (long left, long right); | |
35 long S64BitwiseNot (long value); | |
36 long S64ShiftRight (long value, uint shift); | |
37 long S64ShiftLeft (long value, uint shift); | |
38 double SInt64ToLongDouble (long value); | |
39 long LongDoubleToSInt64 (double value); | |
40 ulong U64Max (); | |
41 ulong U64Add (ulong left, ulong right); | |
42 ulong U64Subtract (ulong left, ulong right); | |
43 ulong U64Multiply (ulong left, ulong right); | |
44 ulong U64Mod (ulong dividend, ulong divisor); | |
45 ulong U64Divide (ulong dividend, ulong divisor, UInt64* remainder); | |
46 ulong U64Div (ulong dividend, ulong divisor); | |
47 ulong U64Set (int value); | |
48 ulong U64SetU (uint value); | |
49 uint U32SetU (ulong value); | |
50 ubyte U64And (ulong left, ulong right); | |
51 ubyte U64Or (ulong left, ulong right); | |
52 ubyte U64Eor (ulong left, ulong right); | |
53 ubyte U64Not (ulong value); | |
54 int U64Compare (ulong left, ulong right); | |
55 ulong U64BitwiseAnd (ulong left, ulong right); | |
56 ulong U64BitwiseOr (ulong left, ulong right); | |
57 ulong U64BitwiseEor (ulong left, ulong right); | |
58 ulong U64BitwiseNot (ulong value); | |
59 ulong U64ShiftRight (ulong value, uint shift); | |
60 ulong U64ShiftLeft (ulong value, uint shift); | |
61 double UInt64ToLongDouble (ulong value); | |
62 ulong LongDoubleToUInt64 (double value); | |
63 long UInt64ToSInt64 (ulong value); | |
64 ulong SInt64ToUInt64 (long value); | |
65 } |