Commit Graph

208 Commits (ef899b7c09aa266c79bf784111ad3b1155b4d029)

Author SHA1 Message Date
marco 155e1fa961 FIX #202
allow interface method with empty (void) return type

-> only look for type declaration if no new line has been
   while skipping whitespace
2019-07-04 01:04:10 +02:00
Alexander Medvednikov 7fdd94fcbb println: fix a bug with u64 etc and newlines 2019-07-04 00:54:40 +02:00
Alexander Medvednikov 1e32a4cec4 println: optimize and remove memory leaks 2019-07-04 00:40:30 +02:00
Alexander Medvednikov 5d4d3b838b StringsBuilder => strings.Builder; strings.repeat() 2019-07-03 22:18:46 +02:00
Alexander Medvednikov 8c36b9499d make json work with new optionals 2019-07-03 21:50:06 +02:00
Alexander Medvednikov dec0d961f5 os: clean up file functions, use optionals 2019-07-03 21:37:12 +02:00
Ivan Sharavuev 290e1df893 Move token string length from magic number to constant. 2019-07-03 18:58:50 +02:00
Alexander Medvednikov d9753ee2c6 lots of vfmt fixes 2019-07-03 16:37:21 +02:00
Zaoqi 015467778d Update .gitignore 2019-07-03 16:12:37 +02:00
Justice Suh a25c4bb59f compiler: add debug flag 2019-07-03 16:10:21 +02:00
AtjonTV ab20db8e6e look for modules in current path 2019-07-02 21:55:57 +02:00
Alexander Medvednikov 1bbf3a3a0c make compiler 2019-07-02 21:45:51 +02:00
Alexander Medvednikov a9b8bc067f enums (`mode == .default_mode` syntax); fix `foo.bar[0].baz = val` 2019-07-02 21:39:26 +02:00
joe-conigliaro 4ed67fbe7e implement get_line & get_raw_line for windows + REPL 2019-07-02 16:39:40 +02:00
yep84 b57d227aa0 Allow to parse uppercase hex number 2019-07-02 15:03:01 +02:00
jiro4989 30633ff14f Fix "Nested comments won't compile" (#908) 2019-07-02 02:19:15 +02:00
Henrixounez dc8c84a2a8 compiler: tmp variables on scripts inside generated main function 2019-07-01 23:42:09 +02:00
yep84 2ca9866f86 Handle --version arg as it already do for help 2019-07-01 22:04:28 +02:00
d2verb e27a3b65f1 Fix #898 2019-07-01 20:56:31 +02:00
Alexander Medvednikov d09758f723 fix a typo 2019-07-01 17:29:29 +02:00
Alexander Medvednikov 6ddc57c190 fix cc_windows_cross() 2019-07-01 17:23:30 +02:00
Maulana Akmal 24b0fd5097 Refactor BuildMode enum to lowercase 2019-07-01 17:20:59 +02:00
Alexander Medvednikov 4c3f1386ef V 0.1.11 2019-07-01 16:53:54 +02:00
Alexander Medvednikov 99a9a6572a lots of Windows fixes and cross compilation for Windows 2019-07-01 16:51:17 +02:00
Zaoqi 00174cdb83 fix #872 2019-07-01 10:46:42 +02:00
Alexander Medvednikov 5936ab16c8 fix maps; use maps for storing functions; verify struct initialization 2019-07-01 02:24:39 +02:00
Archan Patkar 74d234f8cd remove duplication by using a new Preferences struct 2019-06-30 22:03:17 +02:00
Alexander Medvednikov 9062338cb4 fix compilation 2019-06-30 20:48:26 +02:00
Alexander Medvednikov 61b51f6149 os.File clean up + socket.v (dial()) 2019-06-30 20:28:50 +02:00
Zaoqi 5bd188edad Update main.v 2019-06-30 15:34:28 +02:00
Alexander Medvednikov 820aa3d3b3 os: remove os_mac.v and os_win.v, fix os.ls() on Windows 2019-06-30 14:57:27 +02:00
Alexander Medvednikov b0c844415d time.ticks() on Linux/macOS 2019-06-30 14:48:13 +02:00
Zaoqi 437b32fe78 fmt: `id []typ` 2019-06-30 13:06:45 +02:00
bitsnaps 067f131b53 remove unnecessary println
comment out unnecessary println for interface.
2019-06-30 11:51:34 +02:00
Alexander Medvednikov 159990132f fix `v run .` on Windows 2019-06-29 23:41:12 +02:00
Alexander Medvednikov a2b80d5b3d REPL: `exit` to exit 2019-06-29 22:56:23 +02:00
Alexander Medvednikov acaa19054b V 0.1.10 2019-06-29 21:51:25 +02:00
Alexander Medvednikov 1bcf94f7f4 Windows: another \r\n fix 2019-06-29 21:31:13 +02:00
Alexander Medvednikov 18525922fd Windows fixes 2019-06-29 21:26:39 +02:00
lutherwenxu 4b3b69ab15 gitignore: Add gitignore to the build location
This commit moved gitignore to the build location
2019-06-29 16:45:05 +02:00
Alexander Medvednikov 08c8b4ba22 V 0.1.9 2019-06-29 13:11:15 +02:00
Alexander Medvednikov 5b7a1e84a4 move Makefile to root 2019-06-29 12:54:57 +02:00
Alexander Medvednikov 761ba17018 move compiler tests to compiler/ 2019-06-29 12:10:19 +02:00
Alexander Medvednikov 4594d78bd6 move all vlib modules to vlib/ 2019-06-29 12:00:31 +02:00
Alexander Medvednikov bdcbcb075b make test: test V prod build 2019-06-29 11:45:30 +02:00
Alexander Medvednikov 249fa95eab Revert 'compiler: allow mut passed as argument to be modified'. This broke 2019-06-29 11:42:47 +02:00
Alexander Medvednikov 37e2da9d23 exit REPL on Windows 2019-06-28 21:28:55 +02:00
Alexander Medvednikov 2a2b402277 $if fix 2019-06-28 21:28:03 +02:00
Alexander Medvednikov 1bcccf0d1e make V compilable on Windows with mingw-w64 2019-06-28 21:24:51 +02:00
Henrixounez d8caa6431f compiler: checks if variables are unused on scripts main function 2019-06-28 21:05:04 +02:00
Henrixounez 165dfe5fe0 compiler: allow mut passed as argument to be modified 2019-06-28 20:15:49 +02:00
Henrixounez b6b313d246 compiler: clears MainFn when recompile on repl 2019-06-28 17:24:18 +02:00
Henrixounez 748c45203d compiler: add EOF checks in scanner to prevent panic exits
swap s.text[s.pos + 1] to nextc
2019-06-28 17:14:47 +02:00
Alexander Medvednikov 56608dfd2b remove #ifdef, #ifndef, etc 2019-06-28 17:07:03 +02:00
Henrixounez 0026b228c3 scanner: fix on single letter variable declaration on first line 2019-06-28 16:22:23 +02:00
Alexander Medvednikov b81f615a75 parser.v: string interpolation for pointers 2019-06-28 15:56:07 +02:00
Zaoqi 4cd48a6e18 Update main.v: fix typos (#753) 2019-06-28 15:47:38 +02:00
shivakishore14 65fed2d784 Create new line while pressing enter in repl.
Pressing Enter in repl should create new line instead of quiting the repl.
2019-06-28 15:44:54 +02:00
Alexander Medvednikov 99a0aa2300 fix main.v 2019-06-28 15:06:39 +02:00
Alexander Medvednikov 42bb85197a force `mut a := ...`, do not allow `mut a = ...` 2019-06-28 15:04:41 +02:00
Alexander Medvednikov 50012ae57b V 0.1.8 2019-06-28 13:49:34 +02:00
Alexander Medvednikov bd49977feb fix single file programs without `fn main` and REPL (allow imports,
function definitions, consts, etc)
2019-06-28 13:43:32 +02:00
wfhtqp fd9163f715 update Makefile clean old file in all 2019-06-28 11:16:57 +02:00
Alexander Medvednikov 02131d1ae5 fix http 2019-06-27 23:20:30 +02:00
Alexander Medvednikov dc161fb20f V 0.1.7 2019-06-27 23:14:18 +02:00
Alexander Medvednikov 6824e6e7db Replace all remaining C code with V in the compiler and vlib (hoorah!) 2019-06-27 23:11:27 +02:00
Dirk Loss b1682e929d Add '-v' option as described in help text 2019-06-27 22:22:30 +02:00
Alexander Medvednikov f39111bdff V 0.1.6 2019-06-27 18:51:45 +02:00
Alexander Medvednikov 494010d2af os.v: replace remaining C code with V 2019-06-27 18:49:20 +02:00
Henrixounez c83ebe2c66 compiler & builtin: bitshifts CAO fix and C code removal in utf8
utf8: removed bitshift cao in code

utf8: added pub on functions

utf8: byteptr to voidptr

utf8: converts voidptr to byteptr
2019-06-27 15:10:28 +02:00
Alexander Medvednikov 959cc2ea03 some more tests 2019-06-27 15:01:09 +02:00
Alexander Medvednikov 76bf732e63 builtin: public/private functions, remove lots of duplicate functionality
(string.eq, compare_strings, etc)
2019-06-27 13:29:31 +02:00
Alexander Medvednikov b846d02cb2 V 0.1.5 2019-06-27 12:52:06 +02:00
Alexander Medvednikov 90c0791345 replace ugly `tos2(bytes)` with `string(bytes)` 2019-06-27 12:50:02 +02:00
Alexander Medvednikov b61d2ac346 Revert "compiler & builtin: bitshifts CAO fix and C code removal in utf8"
This reverts commit 223c35ffb9.
2019-06-27 12:06:32 +02:00
Henrixounez 223c35ffb9 compiler & builtin: bitshifts CAO fix and C code removal in utf8 2019-06-27 12:01:48 +02:00
drswinghead 7ca00c8f5e Fix decl c struct follow a v struct
struct C.CURL

struct Curl {
    h *C.CURL
}
2019-06-27 02:25:39 +02:00
Henrixounez 8b3802d9b8 help: cleaner help informations
help: added repl informations
2019-06-27 02:00:08 +02:00
Henrixounez b1183dfe2c parser: prompt error if struct is made public and if pub is wrongly used
added *yet* to the pub struct error
2019-06-27 01:56:19 +02:00
Alexander Medvednikov 7e641cd5ba structure printing: minor fixes 2019-06-27 01:55:37 +02:00
Henrixounez 40df91fc08 compiler: added structure printing capabilities 2019-06-27 01:47:45 +02:00
Henrixounez c1400f725f parsing: fixed compound assignment operator bug on for loops 2019-06-26 22:21:54 +02:00
Alexander Medvednikov ef737c5e61 parser.v: document "e" check 2019-06-26 21:44:08 +02:00
Henrixounez 6c7eaa7fd3 parser: fixed problem hexa being casted into float 2019-06-26 21:39:30 +02:00
Alexander Medvednikov 5e89c1399a make test: build examples 2019-06-26 20:44:20 +02:00
S-YOU d998313bb1 fix tests 2019-06-26 19:37:02 +02:00
Alexander Medvednikov 5b5c6b7918 fix make clean 2019-06-26 18:12:30 +02:00
Alexander Medvednikov fa51b24a60 remove @ token 2019-06-26 17:45:54 +02:00
Alexander Medvednikov fa925f3092 os.v: clean up, remove C code, os.exec() 2019-06-26 17:01:50 +02:00
Ryota.I (yabu) 61e4367aa8 👍 Fix up redundant type declare and remove space (#603) 2019-06-26 16:39:40 +02:00
whoami 302645cba0 Makefile curl
`curl` should be used in Makefile as more common and lightweight
2019-06-26 14:54:44 +02:00
Alexander Medvednikov b65ef9022a parser.v: a cleaner hint message 2019-06-26 14:53:55 +02:00
Alexander Medvednikov 1e6f90481e add make clean instruction 2019-06-26 14:50:15 +02:00
drswinghead 4812f92845 avoid literal number #651 2019-06-26 14:46:52 +02:00
Henrixounez f0e6a1c1c1 added arguments handling for run 2019-06-26 14:39:31 +02:00
S-YOU 6a0ac35af2 use matrix and add osx build 2019-06-26 13:57:48 +02:00
whoami 032d8609c7 Makefile cleanup 2019-06-26 13:32:27 +02:00
Alexander Medvednikov b0a5cac0c0 clean up 2019-06-26 13:17:45 +02:00
Alexander Medvednikov c860bac7bf don't allow calling private functions/methods 2019-06-26 13:15:47 +02:00
Alexander Medvednikov 2a3cf0bec9 os.v: clean up init_os_args() 2019-06-26 11:15:05 +02:00