mirror of
https://github.com/vlang/v.git
synced 2023-08-10 21:13:21 +03:00
v.markused: enable v -skip-unused -live run examples/hot_reload/bounce.v
This commit is contained in:
parent
e70084f203
commit
48d42287a9
@ -180,6 +180,11 @@ fn get_all_commands() []Command {
|
|||||||
okmsg: 'V can compile 2048 with -skip-unused.'
|
okmsg: 'V can compile 2048 with -skip-unused.'
|
||||||
rmfile: 'examples/2048/2048'
|
rmfile: 'examples/2048/2048'
|
||||||
}
|
}
|
||||||
|
res << Command{
|
||||||
|
line: '${vexe} -skip-unused -live examples/hot_reload/bounce.v'
|
||||||
|
okmsg: 'V can compile the hot code reloading bounce.v example with both: -skip-unused -live'
|
||||||
|
rmfile: 'examples/hot_reload/bounce'
|
||||||
|
}
|
||||||
}
|
}
|
||||||
res << Command{
|
res << Command{
|
||||||
line: '${vexe} -o vtmp cmd/v'
|
line: '${vexe} -o vtmp cmd/v'
|
||||||
|
@ -9,6 +9,7 @@ pub const is_used = 1
|
|||||||
|
|
||||||
// The live reloader code is implemented here.
|
// The live reloader code is implemented here.
|
||||||
// Note: new_live_reload_info will be called by generated C code inside main()
|
// Note: new_live_reload_info will be called by generated C code inside main()
|
||||||
|
[markused]
|
||||||
pub fn new_live_reload_info(original string, vexe string, vopts string, live_fn_mutex voidptr, live_linkfn live.FNLinkLiveSymbols) &live.LiveReloadInfo {
|
pub fn new_live_reload_info(original string, vexe string, vopts string, live_fn_mutex voidptr, live_linkfn live.FNLinkLiveSymbols) &live.LiveReloadInfo {
|
||||||
file_base := os.file_name(original).replace('.v', '')
|
file_base := os.file_name(original).replace('.v', '')
|
||||||
so_dir := os.cache_dir()
|
so_dir := os.cache_dir()
|
||||||
@ -34,6 +35,7 @@ pub fn new_live_reload_info(original string, vexe string, vopts string, live_fn_
|
|||||||
// Note: start_reloader will be called by generated code inside main(), to start
|
// Note: start_reloader will be called by generated code inside main(), to start
|
||||||
// the hot code reloader thread. start_reloader is executed in the context of
|
// the hot code reloader thread. start_reloader is executed in the context of
|
||||||
// the original main thread.
|
// the original main thread.
|
||||||
|
[markused]
|
||||||
pub fn start_reloader(mut r live.LiveReloadInfo) {
|
pub fn start_reloader(mut r live.LiveReloadInfo) {
|
||||||
// The shared library should be loaded once in the main thread
|
// The shared library should be loaded once in the main thread
|
||||||
// If that fails, the program would crash anyway, just provide
|
// If that fails, the program would crash anyway, just provide
|
||||||
@ -50,6 +52,7 @@ pub fn start_reloader(mut r live.LiveReloadInfo) {
|
|||||||
// that were used during the main program compilation. Any change to any of them, will later trigger a
|
// that were used during the main program compilation. Any change to any of them, will later trigger a
|
||||||
// recompilation and reloading of the produced shared library. This makes it possible for [live] functions
|
// recompilation and reloading of the produced shared library. This makes it possible for [live] functions
|
||||||
// inside modules to also work, not just in the top level program.
|
// inside modules to also work, not just in the top level program.
|
||||||
|
[markused]
|
||||||
pub fn add_live_monitored_file(mut lri live.LiveReloadInfo, path string) {
|
pub fn add_live_monitored_file(mut lri live.LiveReloadInfo, path string) {
|
||||||
mtime := os.file_last_mod_unix(path)
|
mtime := os.file_last_mod_unix(path)
|
||||||
lri.monitored_files << path
|
lri.monitored_files << path
|
||||||
|
@ -338,12 +338,6 @@ pub fn mark_used(mut table ast.Table, pref_ &pref.Preferences, ast_files []&ast.
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
// handle -live main programs:
|
|
||||||
if pref_.is_livemain {
|
|
||||||
all_fn_root_names << 'v.live.executable.start_reloader'
|
|
||||||
all_fn_root_names << 'v.live.executable.new_live_reload_info'
|
|
||||||
}
|
|
||||||
|
|
||||||
mut walker := Walker{
|
mut walker := Walker{
|
||||||
table: table
|
table: table
|
||||||
files: ast_files
|
files: ast_files
|
||||||
|
Loading…
Reference in New Issue
Block a user