1
0
mirror of https://github.com/vlang/v.git synced 2023-08-10 21:13:21 +03:00
Commit Graph

59 Commits

Author SHA1 Message Date
735654296c math.big: refactor big_test.v for scalability (#18696) 2023-06-28 13:35:13 +03:00
1bae9e4538 math.big: minor gcd improvements/fixups and internal rsh_to_set_bit (#18569) 2023-06-27 20:09:22 +03:00
4485f1ca1e math.big: fix documentation for mod_inverse (#18494) 2023-06-20 14:31:04 +03:00
a3f24caffc math.big: add mod_inverse and improve big_mod_pow to allow for large exponents and moduli (#18461) 2023-06-19 17:59:49 +03:00
37386697a3 math.big: fix internal subtract_align_last_byte_in_place overflow (#18413) 2023-06-12 13:33:53 +03:00
8759409a69 math.big: fix min i32 value bug (#17775)
* attempt big int min value fix

* cast value for correct comparison

* update edge case

* add one more test
2023-03-26 08:45:42 +03:00
6a179a2926 checker: add int signedness mismatch checking for function call arguments (#16750) 2022-12-24 06:28:35 +02:00
952f4644c5 math.big: remove import math dependency (math.big only uses min/max/abs) 2022-11-29 14:42:46 +02:00
017ace6ea7 vfmt: change all '$expr' to '${expr}' (#16428) 2022-11-15 16:53:13 +03:00
51f4d99399 all: change optional to result in most of the libraries (#16123) 2022-10-20 22:14:33 +03:00
c662431cfd checker: check unsafe array assign (fix #9651) (#15515) 2022-08-25 08:52:13 +03:00
297cb5f89c math.big: improve multiplication performance (#15200) 2022-07-24 19:35:37 +03:00
ed17779434 math.big: fix Integer.bit_len() when there are no digits in the number 2022-05-18 08:29:08 +03:00
ed12a5c84c math.big: reduce memory usage of Integer.str() (free intermediary Integers), optimise some operations using [direct_array_access] (#14353) 2022-05-13 08:21:34 +03:00
d679146a80 fmt: remove space in front of ? and ! (#14366) 2022-05-13 06:56:21 +03:00
fb192d949b all: replace []byte with []u8 2022-04-15 15:35:35 +03:00
d4a0d6f73c all: byte => u8 2022-04-15 14:58:56 +03:00
716cb17aea math.big: wrap all asserts in module code (not in tests) in $if debug {} (#14012) 2022-04-12 09:38:53 +03:00
7ef7188f4b math.big: add bit_len, optimize gcd, add documentation (#13872) 2022-03-30 15:52:09 +03:00
114a341f5f rand: simplify rand.PRNG, move to optional types for error handling (#13570) 2022-02-23 12:36:14 +02:00
072480352c math.big: add get_bit, set_bit, big_mod_pow (#13507) 2022-02-18 11:53:39 +03:00
59357e873d math: move the math.mathutil generic min/max/abs fns to math (#13042) 2022-01-05 18:02:20 +02:00
f14dabc6bd math.big: add a new greatest-common-divisor-algo for big.Integer, also add a benchmark for it (#12261) 2021-10-26 11:10:13 +03:00
273154c1ae math.big: add Newton and Karatsuba algorithms (#11487) 2021-09-16 19:31:07 +03:00
b63ec8fbcf checker: require params attribute to use struct as keyword arguments in function (#11135) 2021-09-14 00:05:30 +03:00
c8d4a64512 math.big: fix subtract_digit_array (#11451) 2021-09-09 14:56:20 +03:00
96d4a0777f math.big: fix comparison and add tests (#11449) 2021-09-08 20:30:20 +03:00
43fae5de74 bigint: division (#11386) 2021-09-08 14:16:35 +03:00
dadfda9400 math.big: implement big.integer in V (#11352) 2021-08-31 19:21:00 +03:00
2f6b2dd189 js: math.big support, f{32,64}_bits,from_bits support, typeof(expr).name support (#11260) 2021-08-21 17:18:57 +03:00
19abe8c750 math.big: add from_bytes function (#11213) 2021-08-17 09:12:39 +03:00
1eac351f25 math.big: change the return value of divmod to (quotient, remainder) (#10993) 2021-07-30 02:28:32 +03:00
f457b94fe4 cgen: properly support reference args in receivers and arithmetic op methods (#10873) 2021-07-20 15:08:32 +03:00
eed4f50d8c ci: fix sanitize failures with math.big 2021-07-19 20:51:41 +03:00
732d8101e0 math.big: add .bytes() and .bytes_trimmed() methods, big.from_int(1024).bytes_trimmed() == [byte(0x00), 0x04] 2021-07-19 17:17:08 +03:00
d4f31412b7 v: deprecate @VROOT in favour of @VMODROOT (#9795) 2021-04-19 19:01:47 +03:00
3e297bced4 ci: remove some tests from skip_with_werror in v test-self 2021-04-14 12:47:24 +03:00
c0e2b9b1e2 ci: fix some of v test-cleancode 2 2021-04-05 20:55:03 +03:00
c03798e390 checker: disallow implicit conversion from fixed array to fooptr (#8823) 2021-02-26 00:28:47 +01:00
ac4791045f time: consolidate the different sleep functions into time.wait(Duration) (#8853) 2021-02-21 17:05:03 +02:00
d660f2cc6f fmt: insert newline after last HashStmt (#8482) 2021-02-01 14:50:41 +01:00
728344ff65 ci: fix v test-cleancode 2021-01-25 12:55:01 +02:00
8b61891348 fmt: smarter if condition wrapping (#8201) 2021-01-23 10:33:22 +02:00
334b66b311 checker/cgen: add checks and fix cgen for [typedef] for C structs (#8169) 2021-01-17 17:18:07 +02:00
0ca36aafe2 cgen: allow assignment operators for type aliases (#8086) 2021-01-15 02:27:19 +01:00
5f90192970 math: use full import module name in tests 2020-12-23 01:38:17 +11:00
93c0f503a2 math.big: make big.from_string take a decimal, add big.from_hex_string 2020-12-22 09:45:56 +02:00
939e10cb28 math.big: minor clean up 2020-12-22 08:27:50 +01:00
b3e0926601 json: decode/encode time.Time 2020-12-22 07:24:44 +01:00
665e6cc957 math.big: fix big.from_string #7313 (#7351) 2020-12-16 02:23:02 +01:00