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

test-cleancode: add more of vlib/v (#8882)

This commit is contained in:
Lukas Neubert
2021-02-21 19:17:12 +01:00
committed by GitHub
parent 7a35131721
commit 18e88d2fc8
3 changed files with 31 additions and 33 deletions

View File

@ -10,19 +10,19 @@ pub type FNLiveReloadCB = fn (info &LiveReloadInfo)
pub struct LiveReloadInfo {
pub:
vexe string // full path to the v compiler
vopts string // v compiler options for a live shared library
original string // full path to the original source file, compiled with -live
live_fn_mutex voidptr // the address of the C mutex, that locks the [live] fns during reloads.
live_linkfn FNLinkLiveSymbols // generated C callback; receives a dlopen handle
so_extension string // .so or .dll
so_name_template string // a sprintf template for the shared libraries location
vexe string // full path to the v compiler
vopts string // v compiler options for a live shared library
original string // full path to the original source file, compiled with -live
live_fn_mutex voidptr // the address of the C mutex, that locks the [live] fns during reloads.
live_linkfn FNLinkLiveSymbols // generated C callback; receives a dlopen handle
so_extension string // .so or .dll
so_name_template string // a sprintf template for the shared libraries location
pub mut:
live_lib voidptr // the result of dl.open
reloads int // how many times a reloading was tried
reloads_ok int // how many times the reloads succeeded
reload_time_ms int // how much time the last reload took (compilation + loading)
last_mod_ts int // a timestamp for when the original was last changed
live_lib voidptr // the result of dl.open
reloads int // how many times a reloading was tried
reloads_ok int // how many times the reloads succeeded
reload_time_ms int // how much time the last reload took (compilation + loading)
last_mod_ts int // a timestamp for when the original was last changed
recheck_period_ms int = 100 // how often do you want to check for changes
cb_recheck FNLiveReloadCB = voidptr(0) // executed periodically
cb_compile_failed FNLiveReloadCB = voidptr(0) // executed when a reload compilation failed
@ -30,7 +30,7 @@ pub mut:
cb_after FNLiveReloadCB = voidptr(0) // executed after a reload try happened, even if failed
cb_locked_before FNLiveReloadCB = voidptr(0) // executed before lib reload, in the mutex section
cb_locked_after FNLiveReloadCB = voidptr(0) // executed after lib reload, in the mutex section
user_ptr voidptr = voidptr(0) // you can set it to anything, then retrieve it in the cb_ fns
user_ptr voidptr = voidptr(0) // you can set it to anything, then retrieve it in the cb_ fns
}
// LiveReloadInfo.live_linkfn should be called by the reloader
@ -52,7 +52,7 @@ pub mut:
// so that the user can set callbacks, read meta information, etc.
pub fn info() &LiveReloadInfo {
if C.g_live_info != 0 {
return unsafe {&LiveReloadInfo(C.g_live_info)}
return unsafe { &LiveReloadInfo(C.g_live_info) }
}
// When the current program is not compiled with -live, simply
// return a new empty struct LiveReloadInfo in order to prevent
@ -60,9 +60,9 @@ pub fn info() &LiveReloadInfo {
// started, and the structure LiveReloadInfo will not get updated.
// All its fields will be 0, but still safe to access.
mut x := &LiveReloadInfo{}
unsafe {
unsafe {
mut p := &u64(&C.g_live_info)
*p = &u64(x)
}
*p = &u64(x)
}
return x
}