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

6784 Commits

Author SHA1 Message Date
yuyi
e67ce5ea7b
cgen: fix error of alias interpolation (#9209) 2021-03-09 13:25:31 +02:00
Ned Palacios
114a7db6e5
vdoc: fix symbol filtering (#9210) 2021-03-09 13:05:50 +02:00
zakuro
00399b49ab
v.util: add util.tabs() (#9211) 2021-03-09 13:03:25 +02:00
yuyi
fbc02cbc54
csv: fix reader_test.v (#9204) 2021-03-09 03:53:02 +01:00
Vassilis Panagiotopoulos
b893373e63
cgen: make .alias fields in structs use their proper string format, instead of the default %d (#9197) 2021-03-08 23:36:59 +02:00
Delyan Angelov
d7049ae2da
os: deprecate os.exec (returning ?os.Result), in favour of os.execute, which returns os.Result (#8974) 2021-03-08 20:52:13 +02:00
yuyi
10c9f61d61
checker: check empty map invalid syntax (fix #9162) (#9186) 2021-03-08 19:48:17 +02:00
StunxFS
9a7d9e047b
dl: move 'example' to 'examples/dynamic_library_loading' (#9187) 2021-03-08 18:21:43 +02:00
Taegon Kim
4d24cb0158
darwin: fix the C. function declarations (#9194) 2021-03-08 17:18:26 +02:00
yuyi
b64d781a20
csv: fix error of read() (#9193) 2021-03-08 16:57:02 +02:00
yuyi
568faeed77
cgen: add `expr_string() and remove redundant codes (#9188) 2021-03-08 12:46:39 +02:00
yuyi
f2e570d63c
tests: add for tests of labelled continue and break (#9189) 2021-03-08 12:45:12 +02:00
Delyan Angelov
33bd22eda9
vlib/v/gen/tests: remove obsolete generation tests (used during the AST migration from v1 to v2) 2021-03-07 18:47:58 +02:00
pancake
ed9ca0b7bd
build: add address sanitizer make target (#9044) 2021-03-07 16:44:54 +01:00
zakuro
4c3ce97763
parser: fix Enum.value when Enum is an imported symbol (#9046) 2021-03-07 16:44:38 +01:00
Miccah
a1e0f2bc46
gen: add argument names to compile-time method struct (#9174) 2021-03-07 14:28:43 +01:00
yuyi
1b47e2953d
checker: check undefined ident of struct (#9164) 2021-03-07 14:09:38 +01:00
Delyan Angelov
f1c4e962f4
tests: add tests for -d debug, -cg, -g in combination for [if debug]fn etc 2021-03-07 12:42:30 +02:00
Delyan Angelov
64bc2fb40a
v: fix [if debug] fn abc(){} ... abc() 2021-03-07 12:05:07 +02:00
Delyan Angelov
c15de57f0f
tests: simplify the profile_test.v example program to not use net
(avoids unrelated openssl dependency)
2021-03-07 12:05:06 +02:00
Delyan Angelov
d0b89c5675
tests: rename for_c_multi_vars.v to for_c_multi_vars_test.v 2021-03-07 12:05:06 +02:00
nyx-litenite
a902178fdb
arrays: implement python-inspired array zip function and test (#8667) 2021-03-07 11:58:13 +02:00
yuyi
82085b0140
cgen: fix for_in map of fixed_array (#9133) 2021-03-07 11:41:08 +02:00
zakuro
45d51c76da
v.util: add an iabs(x) helper (#9172) 2021-03-07 11:24:05 +02:00
Lukas Neubert
6048d0e974
fmt: fix backslash doubling in attribute string args (#9175) 2021-03-07 09:44:58 +02:00
Lukas Neubert
053d6870d2
fmt: respect user choice of empty lines between type declarations (#9135) 2021-03-06 21:05:55 +02:00
Lukas Neubert
fdcfe397d4
fmt: write empty or blocks the same as empty fn bodies, empty structs, etc (#9136) 2021-03-06 21:04:51 +02:00
Lukas Neubert
043c29cf95
fmt: fix string interpolation with CastExpr (#9137) 2021-03-06 20:47:19 +02:00
Bartimus
ce92bf8da0
os.File: add .read_struct_at and .write_struct_at (#9114) 2021-03-06 20:44:53 +02:00
zakuro
7333b1706c
checker: minor cleanup: clear_flag(.optional) in check_expr_opt_call (#9139) 2021-03-06 20:42:34 +02:00
zakuro
b83530e0ed
fmt: extract part of fmt.v into struct.v (#9141) 2021-03-06 20:40:44 +02:00
Lukas Neubert
7f7f9dca6b
parser,fmt: fix regression with non-void arrays in if conditions (#9161) 2021-03-06 20:39:38 +02:00
Delyan Angelov
849cde245c
v: support dump(expr) (#9160) 2021-03-06 18:09:28 +01:00
penguindark
270df58057
gg.m4: fixed some bugs, added ortho projection (#9140) 2021-03-06 12:14:43 +02:00
yuyi
c802515e71
cgen: minor optimization in gen_code buffer init (#9143) 2021-03-06 12:03:38 +02:00
R cqls
204f57d227
os: update C apis used in os_android.c.v (#9134) 2021-03-05 19:20:11 +02:00
Larpon
07a1a9b84d
builtin: use fprintf to print to stderr on Android (#9130) 2021-03-05 19:12:42 +02:00
Delyan Angelov
fa530683c7
v: fix warnings for v self 2021-03-05 17:24:00 +02:00
Alexander Medvednikov
845e8decce x64: basic mach-o and arm64 support 2021-03-05 17:52:39 +03:00
Joe Conigliaro
818be80581
parser: fix [] in if expr. closes #9131 2021-03-06 01:43:34 +11:00
joe-conigliaro
2d73411396
checker: define missing C fn args & check C & JS args (#8770) 2021-03-05 17:41:11 +03:00
Lukas Neubert
ead2ba6004
fmt: proper single line check for ConcatExpr (#9121) 2021-03-05 15:36:49 +03:00
yuyi
cbbfb460a7
cgen: fix for_in fixed_array (#9129) 2021-03-05 15:35:09 +03:00
zakuro
9ba312066e
fmt: extract type decls code into functions to cleanup (#9126) 2021-03-05 15:34:51 +03:00
Delyan Angelov
0f042124cb
tests: support fn test_fn() ? { opt()? } 2021-03-05 14:18:21 +02:00
yuyi
f4c03e8ed8
cgen: minor optimization in for_in_array (#9127) 2021-03-05 07:58:09 +02:00
Lukas Neubert
80356edd8c
fmt: combine simple attributes into a single line (#9120) 2021-03-05 07:17:57 +02:00
Gal Pasternak
208cabc994
checker: fix generic type ignores implemented interface (#9124) 2021-03-05 06:59:18 +02:00
Alexander Medvednikov
7446d8dc44 strings: test Builder's cut_last on windows 2021-03-04 20:35:17 +03:00
Miccah
709d7460de
vweb: refactor form parsing and add tests (#9051) 2021-03-04 18:00:03 +02:00
Delyan Angelov
6da66226e5
vfmt: keep mut: in interface declarations (#9053) 2021-03-04 15:30:30 +02:00
zakuro
4f02da00ba
checker: check arguments count of sort (#9105) 2021-03-04 15:22:47 +02:00
Leah Lundqvist
65e888230a
jsgen: object equality checks, optimise casting and start builtin implementation (#9068) 2021-03-04 14:02:16 +01:00
Delyan Angelov
5e0e44eb69
os: move file methods to vlib/os/file.c.v, document them, add new file.read_struct and file.write_struct and tests 2021-03-04 14:54:39 +02:00
yuyi
6097045b46
cgen: minor cleanup of cgen.v (#9108) 2021-03-04 14:40:57 +02:00
pancake
c65d65a3f5
v: use dash instead of lowerdash for -print-v-files (#9111) 2021-03-04 14:38:05 +02:00
Delyan Angelov
eb1e1afbc1
ci: fix failing fn_trailing_arg_syntax_keep.vv 2021-03-04 13:05:14 +02:00
yuyi
7c893895d8
cgen: minor cleanup in infix_expr() (#9086) 2021-03-04 12:50:18 +02:00
zakuro
6b2c7fd53e
fmt: remove tail space when using multiline short arg (#9110) 2021-03-04 12:44:50 +02:00
Lukas Neubert
8ce53b8b55
fmt: prevent code corruption with struct update syntax as trailing function arg (#9091) 2021-03-04 12:44:17 +02:00
Lukas Neubert
28fc91acb7
fmt: minor cleanups (#9090) 2021-03-04 12:43:11 +02:00
spaceface
7663f826e5
cgen: add auto str method generation for interfaces (#9095) 2021-03-04 12:41:42 +02:00
yuyi
5f9af3f594
cgen: fix for_in array of fixed_array (fix #9098) (#9099) 2021-03-04 12:39:39 +02:00
zakuro
5b041db442
fmt: don't prepend mod when cast with selective imported types (#9109) 2021-03-04 12:33:52 +02:00
James Addison
a64d9b3e12
termui: add show_cursor() and hide_cursor() (#9087) 2021-03-04 12:31:26 +02:00
zakuro
9bb073580e
checker: replace checking type exists with c.ensure_type_exists (#9100) 2021-03-04 12:28:48 +02:00
yuyi
2870a5a63a
vrepl: fix array_filter (#9104) 2021-03-04 12:24:14 +02:00
yuyi
2b9ffbda42
cgen: fix array_sort by different order of a/b (#9106) 2021-03-04 11:19:02 +01:00
Larpon
d08f994e19
clipboard: ensure public method access after #9062. Fixes #9089 (#9107) 2021-03-04 10:49:40 +02:00
Delyan Angelov
2bfa6dfe2f
io: fix not reading the last byte of a stream with .read(mut buf) 2021-03-04 08:59:48 +02:00
Lukas Neubert
0f8f8bd90d
fmt: force empty lines after struct declarations and most functions (#9096) 2021-03-03 23:56:40 +01:00
Enzo
3e5a0dfc94
time: minor cleanup of operators (#9097) 2021-03-03 23:56:14 +01:00
yuyi
822d20d2cc
cgen: minor simplification of struct zero init (#9085) 2021-03-03 16:03:50 +01:00
Patrick Hintermayer
38495da07e
docs: add a basic vweb getting started example (#9073) 2021-03-03 14:39:04 +02:00
yuyi
6825b4cb30
cgen: format if_expr generated c codes (#9084) 2021-03-03 14:33:00 +02:00
Subhomoy Haldar
a5dd7faf3c
rand: add PRNG interface and unit-tests (#9083) 2021-03-03 13:41:00 +02:00
Nick Treleaven
412c17ccda
checker: check private built-in methods are not accessible (#9062) 2021-03-03 11:12:50 +02:00
Nick Treleaven
bd6693efb8
gg/m4: fix unnecessary uses of [direct_array_access], add [unsafe] (#9059) 2021-03-03 10:20:13 +02:00
Lukas Neubert
460e06b9ff
fmt: do not insert a newline before returned $vweb.html() (#9063) 2021-03-03 10:14:05 +02:00
yuyi
97f9abcf82
cgen: fix anon_fn in containers (#9077) 2021-03-03 10:12:08 +02:00
Uwe Krüger
dd475f4e37
checker/cgen: enable IfGuardExpr for a[k] and <-ch (#9065) 2021-03-03 10:10:38 +02:00
StunxFS
dad7c40306
checker: minor cleanup in call_method (#9066) 2021-03-03 10:07:16 +02:00
Delyan Angelov
094936d764
ci: reduce chances of false positives from vweb_test.v on macos 2021-03-03 10:04:12 +02:00
zakuro
c74fa9e471
checker: correct pos for type error of if v is interface (#9080) 2021-03-03 09:23:39 +02:00
Lukas Neubert
8a0b5bad94
fmt: keep empty lines in const blocks (#9071) 2021-03-03 09:23:11 +02:00
Delyan Angelov
b89c6d7826
Revert "rand: use static instead of __global (#9057)"
This reverts commit ec2f731801.
2021-03-03 08:36:56 +02:00
Delyan Angelov
ec2f731801
rand: use static instead of __global (#9057) 2021-03-03 07:47:47 +02:00
Joe Conigliaro
a50f2ca5e8
interfaces: error on implemention of own interface method & on duplicate normal methods 2021-03-03 15:02:10 +11:00
StunxFS
0dafdb4cde
dl: minor improvement of get_shared_library_extension (#9070) 2021-03-02 21:38:32 +02:00
Miccah
b3a31e7626
vweb: add test for 0 Content-Length hang (#9069) 2021-03-02 21:31:57 +02:00
Delyan Angelov
cd423251da
vweb: add .mount_static_folder_at/2 , use it instead of app.handle_static in the server_sent_events example 2021-03-02 21:30:18 +02:00
Delyan Angelov
eb4c60877e
vweb: fix timeouting after 30 seconds, when a request with Content-Length: 0 was processed 2021-03-02 21:02:44 +02:00
Delyan Angelov
488848e904
builtin: simplify copy/2 2021-03-02 18:14:42 +02:00
Delyan Angelov
d0e8e8f178
checker: add error for print( voidfn() ) 2021-03-02 17:54:38 +02:00
yuyi
62ccd740f0
cgen: minor perf fix in index_expr() (#9054) 2021-03-02 12:28:26 +01:00
Delyan Angelov
31321b68ea
v: show help for -h, -help, and --help, in addition to v help 2021-03-02 12:22:10 +02:00
yuyi
81dbd72412
cgen: fix anon_fn in containers (fix #8965) (#9049) 2021-03-02 10:26:27 +02:00
Joe Conigliaro
01735c67c6
cgen: fix duplicate method wrapper from interface method call. closes #9018 2021-03-02 19:15:49 +11:00
spaceface
2b53992c01
checker, cgen: allow implementing an interface with an embedded struct (#9042) 2021-03-01 21:47:00 +01:00
yuyi
65900e55e3
cgen: fix if_expr of multi-stmts optional (#9039) 2021-03-01 21:39:04 +01:00
Nick Treleaven
dc04c3196b
builder: fix detecting duplicate functions (#9033) 2021-03-01 21:38:31 +01:00
yuyi
6d77594409
cgen: merge cc_type and cc_type2 (#9036) 2021-03-01 21:36:58 +01:00
zakuro
db9b523cc9
utf8: deprecate utf8.char_len (#9008) 2021-03-01 15:35:57 +02:00
yuyi
f9c8d3d25c
cgen: fix return if true { 0 } else { none } (fix #9005) (#9030) 2021-03-01 13:56:07 +01:00
Miccah
d0fab60981
vweb: refactor routing logic (#9025) 2021-03-01 11:50:52 +01:00
makino
8045395cbd
net: document pub structs & functions in http/http.v (#9016) 2021-03-01 10:48:38 +01:00
Ned Palacios
ee879f3e41
x.json2: proper string encoding + minor fixes (#9026) 2021-03-01 10:22:36 +01:00
Anton Zavodchikov
506041a15b
tmpl: fix doubling templates folder path and enhancements (#9029) 2021-03-01 11:15:59 +02:00
spaceface
15896beace
cgen: scope $for fields/methods independently (#9017) 2021-03-01 01:01:56 +01:00
spaceface
b712af56fd
all: bring back panic(err.msg) -> panic(err) (#9022) 2021-03-01 00:18:14 +01:00
zakuro
ce115dcbe0
builtin: correct error underline for unicode wide chars (#9010) 2021-03-01 00:18:02 +01:00
Uwe Krüger
e937d6249c
cgen: fix various issues concerning optionals (#9021) 2021-02-28 23:21:03 +01:00
spaceface
d7252f4474
builtin: allow passing any argument type to panic (#9020) 2021-02-28 22:57:18 +01:00
spaceface
d63b7bc35a
all: update repo to use the new error handling syntax (#8950) 2021-02-28 23:20:21 +03:00
spaceface
b9a381f101
all: migrate to the new Option (p. 1) (#8924) 2021-02-28 22:24:29 +03:00
Delyan Angelov
e354dcefc2
fmt: fix support for mut static x := 42 2021-02-28 19:40:21 +02:00
Delyan Angelov
4076e8eaa0
tmpl: add a tmpl_all_in_one_folder.vv test; fix for static_vars_in_translated_mode.vv 2021-02-28 19:14:19 +02:00
Delyan Angelov
e564269477
ci: fix static_vars_in_translated_mode.vv 2021-02-28 18:55:25 +02:00
Delyan Angelov
5e87eeb864
tmpl: support for @include 'file.md' as well as paths != templates/ 2021-02-28 18:52:31 +02:00
Delyan Angelov
4125bfe401
all: fix references to time.wait -> time.sleep 2021-02-28 18:01:31 +02:00
Delyan Angelov
bdce35fd9c
parser: support static x := 42 in [unsafe] functions too 2021-02-28 14:32:46 +02:00
Delyan Angelov
276c08e7f7
fmt: support static too 2021-02-28 13:08:16 +02:00
Miccah
7e08e84bc1
vweb: refactor HTTP request parsing (#8874) 2021-02-27 23:18:25 +01:00
Miccah
2f9687d29b
net: add HTTP Header struct and methods (#8991) 2021-02-27 22:54:27 +01:00
penguindark
1d69a0bd22
gg: window_size_real_pixels that for 3D without dpi scaling (#9004) 2021-02-27 22:11:26 +01:00
Patrick Hintermayer
ae01b480c4
docs: ROADMAP.md instead of roadmap.txt (#9002) 2021-02-27 21:18:47 +03:00
Delyan Angelov
20f9bdfa8e
os: fixes for os.input(), os.get_raw_stdin(), os.get_raw_line() in case of stdin EOF 2021-02-27 20:02:36 +02:00
Alexander Medvednikov
e6b4f9ff09 time: fix sleep() on windows 2021-02-27 20:53:27 +03:00
Alexander Medvednikov
3a2d696fac time: time.wait() => time.sleep() 2021-02-27 20:41:06 +03:00
Alexander Medvednikov
be4a2e17d3 cgen: always use tmp vars in return_statement() 2021-02-27 20:00:19 +03:00
Alexander Medvednikov
d39866d4f7 cgen: optionals/autofree fixes 2021-02-27 17:11:30 +03:00
Delyan Angelov
efca21e988
math: cleanup math.v, document math.aprox_cos and math.aprox_sin 2021-02-27 11:18:43 +02:00
Nick Treleaven
a1244a9f5f
checker: check that the module init fn, should have no params, and no return type (#8988) 2021-02-27 11:11:20 +02:00
zakuro
d0a64f2da7
net/openssl/websocket: implement io.Writer (#8980) 2021-02-27 10:29:18 +02:00
Uwe Krüger
f67bff1696
all: support thread handles and wait() for functions returning optionals (#8990) 2021-02-27 10:16:55 +02:00
Nick Treleaven
aed348fb80
os: tag some File methods that take voidptr as unsafe - write_bytes, write_bytes_at (#8985) 2021-02-27 10:11:17 +02:00
zakuro
1fd0aceb42
parser: imporve generics detection (#8992) 2021-02-27 10:07:18 +02:00
Delyan Angelov
a9e9079e48
gg: make .set_cfg public 2021-02-27 09:15:39 +02:00
Nick Treleaven
23f231ee61
builtin: tag array methods unsafe: *_many, grow_len, pointers (#8983) 2021-02-26 22:55:09 +01:00
Nick Treleaven
8874379c48
checker: check left selector expression in $if left is right (#8987) 2021-02-26 21:51:35 +01:00
spaceface
51fae95339
cgen: move the condition of an iterator to a temp var (#8989) 2021-02-26 21:51:01 +01:00
Nick Treleaven
4ad95cfeaf
checker: check types with $for/$if introspection (#8984) 2021-02-26 15:26:50 +01:00
Delyan Angelov
1a8ff9d7dd
v.gen.c: ensure that @continue is escaped in the generated C code 2021-02-26 10:22:35 +02:00
zakuro
995bd66970
encoding.utf8.east_asian: add support for East_Asian_Width (#8978)
See https://www.unicode.org/reports/tr11/
2021-02-26 09:52:07 +02:00
yuyi
524372d49c
parser: fix incorrect comments of expr() (#8979) 2021-02-26 09:21:58 +02:00
zakuro
89c82ff8e2
parser: treat f<mod.Type> as generic call not < operator (#8938) 2021-02-26 09:05:00 +02:00
Lukas Neubert
5aebd646bb
fmt: keep some line comments in multi line arrays (#8969) 2021-02-26 09:01:03 +02:00
Lukas Neubert
2c609411dd
fmt: do not write single line or blocks with multi line stmts (#8952) 2021-02-26 08:41:24 +02:00
Ned Palacios
8dff168e01
x.json2: create custom scanner for scanning JSON (#8716) 2021-02-26 08:36:02 +02:00
Nick Treleaven
59d4d0ef1d
checker: detect unknown type to iterate with $for (#8971) 2021-02-26 08:28:19 +02:00