mirror of
https://github.com/vlang/v.git
synced 2023-08-10 21:13:21 +03:00
v.builder,v.gen: time Builder.front_stages.parse_files, Builder.resolve_deps, Gen.sort_structs
This commit is contained in:
parent
4a6d161c08
commit
149517ced4
@ -72,10 +72,15 @@ pub fn new_builder(pref &pref.Preferences) Builder {
|
|||||||
}
|
}
|
||||||
|
|
||||||
pub fn (mut b Builder) front_stages(v_files []string) ? {
|
pub fn (mut b Builder) front_stages(v_files []string) ? {
|
||||||
util.timing_start('PARSE')
|
|
||||||
b.parsed_files = parser.parse_files(v_files, b.table, b.pref)
|
|
||||||
b.parse_imports()
|
|
||||||
mut timers := util.get_timers()
|
mut timers := util.get_timers()
|
||||||
|
util.timing_start('PARSE')
|
||||||
|
|
||||||
|
util.timing_start('Builder.front_stages.parse_files')
|
||||||
|
b.parsed_files = parser.parse_files(v_files, b.table, b.pref)
|
||||||
|
timers.show('Builder.front_stages.parse_files')
|
||||||
|
|
||||||
|
b.parse_imports()
|
||||||
|
|
||||||
timers.show('SCAN')
|
timers.show('SCAN')
|
||||||
timers.show('PARSE')
|
timers.show('PARSE')
|
||||||
timers.show_if_exists('PARSE stmt')
|
timers.show_if_exists('PARSE stmt')
|
||||||
@ -86,7 +91,11 @@ pub fn (mut b Builder) front_stages(v_files []string) ? {
|
|||||||
|
|
||||||
pub fn (mut b Builder) middle_stages() ? {
|
pub fn (mut b Builder) middle_stages() ? {
|
||||||
util.timing_start('CHECK')
|
util.timing_start('CHECK')
|
||||||
|
|
||||||
|
util.timing_start('Checker.generic_insts_to_concrete')
|
||||||
b.checker.generic_insts_to_concrete()
|
b.checker.generic_insts_to_concrete()
|
||||||
|
util.timing_measure('Checker.generic_insts_to_concrete')
|
||||||
|
|
||||||
b.checker.check_files(b.parsed_files)
|
b.checker.check_files(b.parsed_files)
|
||||||
util.timing_measure('CHECK')
|
util.timing_measure('CHECK')
|
||||||
b.print_warnings_and_errors()
|
b.print_warnings_and_errors()
|
||||||
@ -113,6 +122,10 @@ pub fn (mut b Builder) front_and_middle_stages(v_files []string) ? {
|
|||||||
|
|
||||||
// parse all deps from already parsed files
|
// parse all deps from already parsed files
|
||||||
pub fn (mut b Builder) parse_imports() {
|
pub fn (mut b Builder) parse_imports() {
|
||||||
|
util.timing_start(@METHOD)
|
||||||
|
defer {
|
||||||
|
util.timing_measure(@METHOD)
|
||||||
|
}
|
||||||
mut done_imports := []string{}
|
mut done_imports := []string{}
|
||||||
if b.pref.is_vsh {
|
if b.pref.is_vsh {
|
||||||
done_imports << 'os'
|
done_imports << 'os'
|
||||||
@ -189,6 +202,10 @@ pub fn (mut b Builder) parse_imports() {
|
|||||||
}
|
}
|
||||||
|
|
||||||
pub fn (mut b Builder) resolve_deps() {
|
pub fn (mut b Builder) resolve_deps() {
|
||||||
|
util.timing_start(@METHOD)
|
||||||
|
defer {
|
||||||
|
util.timing_measure(@METHOD)
|
||||||
|
}
|
||||||
graph := b.import_graph()
|
graph := b.import_graph()
|
||||||
deps_resolved := graph.resolve()
|
deps_resolved := graph.resolve()
|
||||||
if b.pref.is_verbose {
|
if b.pref.is_verbose {
|
||||||
|
@ -5878,6 +5878,10 @@ fn (g &Gen) checker_bug(s string, pos token.Position) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
fn (mut g Gen) write_init_function() {
|
fn (mut g Gen) write_init_function() {
|
||||||
|
util.timing_start(@METHOD)
|
||||||
|
defer {
|
||||||
|
util.timing_measure(@METHOD)
|
||||||
|
}
|
||||||
if g.pref.is_liveshared {
|
if g.pref.is_liveshared {
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
@ -6154,6 +6158,10 @@ fn (mut g Gen) write_types(types []ast.TypeSymbol) {
|
|||||||
|
|
||||||
// sort structs by dependant fields
|
// sort structs by dependant fields
|
||||||
fn (g &Gen) sort_structs(typesa []ast.TypeSymbol) []ast.TypeSymbol {
|
fn (g &Gen) sort_structs(typesa []ast.TypeSymbol) []ast.TypeSymbol {
|
||||||
|
util.timing_start(@METHOD)
|
||||||
|
defer {
|
||||||
|
util.timing_measure(@METHOD)
|
||||||
|
}
|
||||||
mut dep_graph := depgraph.new_dep_graph()
|
mut dep_graph := depgraph.new_dep_graph()
|
||||||
// types name list
|
// types name list
|
||||||
mut type_names := []string{}
|
mut type_names := []string{}
|
||||||
|
Loading…
Reference in New Issue
Block a user