#10000=@"/async.js;sourcefile" files(#10000,"/async.js") #10001=@"/;folder" folders(#10001,"/") containerparent(#10001,#10000) #10002=@"loc,{#10000},0,0,0,0" locations_default(#10002,#10000,0,0,0,0) hasLocation(#10000,#10002) #20000=@"global_scope" scopes(#20000,0) #20001=@"script;{#10000},1,1" #20002=* lines(#20002,#20001,"let f = async() : Promise => await foo();"," ") #20003=@"loc,{#10000},1,1,1,49" locations_default(#20003,#10000,1,1,1,49) hasLocation(#20002,#20003) numlines(#20001,1,1,0) #20004=* tokeninfo(#20004,7,#20001,0,"let") #20005=@"loc,{#10000},1,1,1,3" locations_default(#20005,#10000,1,1,1,3) hasLocation(#20004,#20005) #20006=* tokeninfo(#20006,6,#20001,1,"f") #20007=@"loc,{#10000},1,5,1,5" locations_default(#20007,#10000,1,5,1,5) hasLocation(#20006,#20007) #20008=* tokeninfo(#20008,8,#20001,2,"=") #20009=@"loc,{#10000},1,7,1,7" locations_default(#20009,#10000,1,7,1,7) hasLocation(#20008,#20009) #20010=* tokeninfo(#20010,6,#20001,3,"async") #20011=@"loc,{#10000},1,9,1,13" locations_default(#20011,#10000,1,9,1,13) hasLocation(#20010,#20011) #20012=* tokeninfo(#20012,8,#20001,4,"(") #20013=@"loc,{#10000},1,14,1,14" locations_default(#20013,#10000,1,14,1,14) hasLocation(#20012,#20013) #20014=* tokeninfo(#20014,8,#20001,5,")") #20015=@"loc,{#10000},1,15,1,15" locations_default(#20015,#10000,1,15,1,15) hasLocation(#20014,#20015) #20016=* tokeninfo(#20016,8,#20001,6,":") #20017=@"loc,{#10000},1,17,1,17" locations_default(#20017,#10000,1,17,1,17) hasLocation(#20016,#20017) #20018=* tokeninfo(#20018,6,#20001,7,"Promise") #20019=@"loc,{#10000},1,19,1,25" locations_default(#20019,#10000,1,19,1,25) hasLocation(#20018,#20019) #20020=* tokeninfo(#20020,8,#20001,8,"<") #20021=@"loc,{#10000},1,26,1,26" locations_default(#20021,#10000,1,26,1,26) hasLocation(#20020,#20021) #20022=* tokeninfo(#20022,6,#20001,9,"string") #20023=@"loc,{#10000},1,27,1,32" locations_default(#20023,#10000,1,27,1,32) hasLocation(#20022,#20023) #20024=* tokeninfo(#20024,8,#20001,10,">") #20025=@"loc,{#10000},1,33,1,33" locations_default(#20025,#10000,1,33,1,33) hasLocation(#20024,#20025) #20026=* tokeninfo(#20026,8,#20001,11,"=>") #20027=@"loc,{#10000},1,35,1,36" locations_default(#20027,#10000,1,35,1,36) hasLocation(#20026,#20027) #20028=* tokeninfo(#20028,6,#20001,12,"await") #20029=@"loc,{#10000},1,38,1,42" locations_default(#20029,#10000,1,38,1,42) hasLocation(#20028,#20029) #20030=* tokeninfo(#20030,6,#20001,13,"foo") #20031=@"loc,{#10000},1,44,1,46" locations_default(#20031,#10000,1,44,1,46) hasLocation(#20030,#20031) #20032=* tokeninfo(#20032,8,#20001,14,"(") #20033=@"loc,{#10000},1,47,1,47" locations_default(#20033,#10000,1,47,1,47) hasLocation(#20032,#20033) #20034=* tokeninfo(#20034,8,#20001,15,")") #20035=@"loc,{#10000},1,48,1,48" locations_default(#20035,#10000,1,48,1,48) hasLocation(#20034,#20035) #20036=* tokeninfo(#20036,8,#20001,16,";") #20037=@"loc,{#10000},1,49,1,49" locations_default(#20037,#10000,1,49,1,49) hasLocation(#20036,#20037) #20038=* tokeninfo(#20038,0,#20001,17,"") #20039=@"loc,{#10000},2,1,2,0" locations_default(#20039,#10000,2,1,2,0) hasLocation(#20038,#20039) toplevels(#20001,0) #20040=@"loc,{#10000},1,1,2,0" locations_default(#20040,#10000,1,1,2,0) hasLocation(#20001,#20040) #20041=@"var;{f};{#20000}" variables(#20041,"f",#20000) #20042=* stmts(#20042,23,#20001,0,"let f = ... foo();") hasLocation(#20042,#20003) stmt_containers(#20042,#20001) #20043=* exprs(#20043,64,#20042,0,"f = asy ... t foo()") #20044=@"loc,{#10000},1,5,1,48" locations_default(#20044,#10000,1,5,1,48) hasLocation(#20043,#20044) enclosing_stmt(#20043,#20042) expr_containers(#20043,#20001) #20045=* exprs(#20045,78,#20043,0,"f") hasLocation(#20045,#20007) enclosing_stmt(#20045,#20042) expr_containers(#20045,#20001) literals("f","f",#20045) decl(#20045,#20041) #20046=* exprs(#20046,65,#20043,1,"async() ... t foo()") #20047=@"loc,{#10000},1,9,1,48" locations_default(#20047,#10000,1,9,1,48) hasLocation(#20046,#20047) enclosing_stmt(#20046,#20042) expr_containers(#20046,#20001) #20048=* scopes(#20048,1) scopenodes(#20046,#20048) scopenesting(#20048,#20000) is_async(#20046) #20049=* exprs(#20049,92,#20046,-2,"await foo()") #20050=@"loc,{#10000},1,38,1,48" locations_default(#20050,#10000,1,38,1,48) hasLocation(#20049,#20050) expr_containers(#20049,#20046) #20051=* exprs(#20051,13,#20049,0,"foo()") #20052=@"loc,{#10000},1,44,1,48" locations_default(#20052,#10000,1,44,1,48) hasLocation(#20051,#20052) expr_containers(#20051,#20046) #20053=* exprs(#20053,79,#20051,-1,"foo") hasLocation(#20053,#20031) expr_containers(#20053,#20046) literals("foo","foo",#20053) #20054=@"var;{foo};{#20000}" variables(#20054,"foo",#20000) bind(#20053,#20054) #20055=* entry_cfg_node(#20055,#20001) #20056=@"loc,{#10000},1,1,1,0" locations_default(#20056,#10000,1,1,1,0) hasLocation(#20055,#20056) #20057=* exit_cfg_node(#20057,#20001) hasLocation(#20057,#20039) successor(#20042,#20045) successor(#20046,#20043) #20058=* entry_cfg_node(#20058,#20046) #20059=@"loc,{#10000},1,9,1,8" locations_default(#20059,#10000,1,9,1,8) hasLocation(#20058,#20059) #20060=* exit_cfg_node(#20060,#20046) #20061=@"loc,{#10000},1,49,1,48" locations_default(#20061,#10000,1,49,1,48) hasLocation(#20060,#20061) successor(#20053,#20051) successor(#20051,#20049) successor(#20049,#20060) successor(#20058,#20053) successor(#20045,#20046) successor(#20043,#20057) successor(#20055,#20042) numlines(#10000,1,1,0) filetype(#10000,"javascript")