From 50247d5093bef96c1377f0e78950378da60f748e Mon Sep 17 00:00:00 2001 From: Alexander Medvednikov Date: Sun, 28 May 2023 02:44:47 +0200 Subject: [PATCH] gen.golang: handle spawn/go --- thirdparty/photon/photonwrapper.h | 11 +---------- vlib/v/gen/golang/golang.v | 8 ++++++++ 2 files changed, 9 insertions(+), 10 deletions(-) diff --git a/thirdparty/photon/photonwrapper.h b/thirdparty/photon/photonwrapper.h index f3241a0073..cef9d9ddf3 100644 --- a/thirdparty/photon/photonwrapper.h +++ b/thirdparty/photon/photonwrapper.h @@ -1,6 +1,3 @@ - - - #ifndef C_PHOTONWRAPPER_H_ #define C_PHOTONWRAPPER_H_ @@ -20,18 +17,12 @@ extern "C" { #else - typedef struct CppClass CppClass; -#endif -//CppClass *cpp_class_create(); -//void cpp_class_destroy(CppClass *c); -//void cpp_class_do_work(CppClass *c); +#endif int photon_init_default(); void photon_thread_create11(void* (* f)(void*)); - void photon_sleep_s(int n); - void photon_sleep_ms(int n); diff --git a/vlib/v/gen/golang/golang.v b/vlib/v/gen/golang/golang.v index 0d7d1142fc..dd732909c1 100644 --- a/vlib/v/gen/golang/golang.v +++ b/vlib/v/gen/golang/golang.v @@ -563,6 +563,9 @@ pub fn (mut f Gen) expr(node_ ast.Expr) { ast.GoExpr { f.go_expr(node) } + ast.SpawnExpr { + f.spawn_expr(node) + } ast.Ident { f.ident(node) } @@ -1043,6 +1046,11 @@ pub fn (mut f Gen) go_expr(node ast.GoExpr) { f.call_expr(node.call_expr) } +pub fn (mut f Gen) spawn_expr(node ast.SpawnExpr) { + f.write('go ') + f.call_expr(node.call_expr) +} + pub fn (mut f Gen) goto_label(node ast.GotoLabel) { f.writeln('${node.name}:') }