#10000=@"/optional-chaining.js;sourcefile" files(#10000,"/optional-chaining.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,"a1?.b1;"," ") #20003=@"loc,{#10000},1,1,1,7" locations_default(#20003,#10000,1,1,1,7) hasLocation(#20002,#20003) #20004=* lines(#20004,#20001,""," ") #20005=@"loc,{#10000},2,1,2,0" locations_default(#20005,#10000,2,1,2,0) hasLocation(#20004,#20005) #20006=* lines(#20006,#20001,"a2?.[x2];"," ") #20007=@"loc,{#10000},3,1,3,9" locations_default(#20007,#10000,3,1,3,9) hasLocation(#20006,#20007) #20008=* lines(#20008,#20001,""," ") #20009=@"loc,{#10000},4,1,4,0" locations_default(#20009,#10000,4,1,4,0) hasLocation(#20008,#20009) #20010=* lines(#20010,#20001,"a3?.b3();"," ") #20011=@"loc,{#10000},5,1,5,9" locations_default(#20011,#10000,5,1,5,9) hasLocation(#20010,#20011) #20012=* lines(#20012,#20001,""," ") #20013=@"loc,{#10000},6,1,6,0" locations_default(#20013,#10000,6,1,6,0) hasLocation(#20012,#20013) #20014=* lines(#20014,#20001,"a4?.();"," ") #20015=@"loc,{#10000},7,1,7,7" locations_default(#20015,#10000,7,1,7,7) hasLocation(#20014,#20015) #20016=* lines(#20016,#20001,""," ") #20017=@"loc,{#10000},8,1,8,0" locations_default(#20017,#10000,8,1,8,0) hasLocation(#20016,#20017) #20018=* lines(#20018,#20001,"o5?.3:2;"," ") #20019=@"loc,{#10000},9,1,9,8" locations_default(#20019,#10000,9,1,9,8) hasLocation(#20018,#20019) #20020=* lines(#20020,#20001,""," ") #20021=@"loc,{#10000},10,1,10,0" locations_default(#20021,#10000,10,1,10,0) hasLocation(#20020,#20021) #20022=* lines(#20022,#20001,"a6?.b6[x6].c6?.(y6).d6;"," ") #20023=@"loc,{#10000},11,1,11,23" locations_default(#20023,#10000,11,1,11,23) hasLocation(#20022,#20023) #20024=* lines(#20024,#20001,""," ") #20025=@"loc,{#10000},12,1,12,0" locations_default(#20025,#10000,12,1,12,0) hasLocation(#20024,#20025) #20026=* lines(#20026,#20001,"delete a?.b","") #20027=@"loc,{#10000},13,1,13,11" locations_default(#20027,#10000,13,1,13,11) hasLocation(#20026,#20027) numlines(#20001,13,7,0) #20028=* tokeninfo(#20028,6,#20001,0,"a1") #20029=@"loc,{#10000},1,1,1,2" locations_default(#20029,#10000,1,1,1,2) hasLocation(#20028,#20029) #20030=* tokeninfo(#20030,8,#20001,1,"?.") #20031=@"loc,{#10000},1,3,1,4" locations_default(#20031,#10000,1,3,1,4) hasLocation(#20030,#20031) #20032=* tokeninfo(#20032,6,#20001,2,"b1") #20033=@"loc,{#10000},1,5,1,6" locations_default(#20033,#10000,1,5,1,6) hasLocation(#20032,#20033) #20034=* tokeninfo(#20034,8,#20001,3,";") #20035=@"loc,{#10000},1,7,1,7" locations_default(#20035,#10000,1,7,1,7) hasLocation(#20034,#20035) #20036=* tokeninfo(#20036,6,#20001,4,"a2") #20037=@"loc,{#10000},3,1,3,2" locations_default(#20037,#10000,3,1,3,2) hasLocation(#20036,#20037) #20038=* tokeninfo(#20038,8,#20001,5,"?.") #20039=@"loc,{#10000},3,3,3,4" locations_default(#20039,#10000,3,3,3,4) hasLocation(#20038,#20039) #20040=* tokeninfo(#20040,8,#20001,6,"[") #20041=@"loc,{#10000},3,5,3,5" locations_default(#20041,#10000,3,5,3,5) hasLocation(#20040,#20041) #20042=* tokeninfo(#20042,6,#20001,7,"x2") #20043=@"loc,{#10000},3,6,3,7" locations_default(#20043,#10000,3,6,3,7) hasLocation(#20042,#20043) #20044=* tokeninfo(#20044,8,#20001,8,"]") #20045=@"loc,{#10000},3,8,3,8" locations_default(#20045,#10000,3,8,3,8) hasLocation(#20044,#20045) #20046=* tokeninfo(#20046,8,#20001,9,";") #20047=@"loc,{#10000},3,9,3,9" locations_default(#20047,#10000,3,9,3,9) hasLocation(#20046,#20047) #20048=* tokeninfo(#20048,6,#20001,10,"a3") #20049=@"loc,{#10000},5,1,5,2" locations_default(#20049,#10000,5,1,5,2) hasLocation(#20048,#20049) #20050=* tokeninfo(#20050,8,#20001,11,"?.") #20051=@"loc,{#10000},5,3,5,4" locations_default(#20051,#10000,5,3,5,4) hasLocation(#20050,#20051) #20052=* tokeninfo(#20052,6,#20001,12,"b3") #20053=@"loc,{#10000},5,5,5,6" locations_default(#20053,#10000,5,5,5,6) hasLocation(#20052,#20053) #20054=* tokeninfo(#20054,8,#20001,13,"(") #20055=@"loc,{#10000},5,7,5,7" locations_default(#20055,#10000,5,7,5,7) hasLocation(#20054,#20055) #20056=* tokeninfo(#20056,8,#20001,14,")") #20057=@"loc,{#10000},5,8,5,8" locations_default(#20057,#10000,5,8,5,8) hasLocation(#20056,#20057) #20058=* tokeninfo(#20058,8,#20001,15,";") #20059=@"loc,{#10000},5,9,5,9" locations_default(#20059,#10000,5,9,5,9) hasLocation(#20058,#20059) #20060=* tokeninfo(#20060,6,#20001,16,"a4") #20061=@"loc,{#10000},7,1,7,2" locations_default(#20061,#10000,7,1,7,2) hasLocation(#20060,#20061) #20062=* tokeninfo(#20062,8,#20001,17,"?.") #20063=@"loc,{#10000},7,3,7,4" locations_default(#20063,#10000,7,3,7,4) hasLocation(#20062,#20063) #20064=* tokeninfo(#20064,8,#20001,18,"(") #20065=@"loc,{#10000},7,5,7,5" locations_default(#20065,#10000,7,5,7,5) hasLocation(#20064,#20065) #20066=* tokeninfo(#20066,8,#20001,19,")") #20067=@"loc,{#10000},7,6,7,6" locations_default(#20067,#10000,7,6,7,6) hasLocation(#20066,#20067) #20068=* tokeninfo(#20068,8,#20001,20,";") #20069=@"loc,{#10000},7,7,7,7" locations_default(#20069,#10000,7,7,7,7) hasLocation(#20068,#20069) #20070=* tokeninfo(#20070,6,#20001,21,"o5") #20071=@"loc,{#10000},9,1,9,2" locations_default(#20071,#10000,9,1,9,2) hasLocation(#20070,#20071) #20072=* tokeninfo(#20072,8,#20001,22,"?") #20073=@"loc,{#10000},9,3,9,3" locations_default(#20073,#10000,9,3,9,3) hasLocation(#20072,#20073) #20074=* tokeninfo(#20074,3,#20001,23,".3") #20075=@"loc,{#10000},9,4,9,5" locations_default(#20075,#10000,9,4,9,5) hasLocation(#20074,#20075) #20076=* tokeninfo(#20076,8,#20001,24,":") #20077=@"loc,{#10000},9,6,9,6" locations_default(#20077,#10000,9,6,9,6) hasLocation(#20076,#20077) #20078=* tokeninfo(#20078,3,#20001,25,"2") #20079=@"loc,{#10000},9,7,9,7" locations_default(#20079,#10000,9,7,9,7) hasLocation(#20078,#20079) #20080=* tokeninfo(#20080,8,#20001,26,";") #20081=@"loc,{#10000},9,8,9,8" locations_default(#20081,#10000,9,8,9,8) hasLocation(#20080,#20081) #20082=* tokeninfo(#20082,6,#20001,27,"a6") #20083=@"loc,{#10000},11,1,11,2" locations_default(#20083,#10000,11,1,11,2) hasLocation(#20082,#20083) #20084=* tokeninfo(#20084,8,#20001,28,"?.") #20085=@"loc,{#10000},11,3,11,4" locations_default(#20085,#10000,11,3,11,4) hasLocation(#20084,#20085) #20086=* tokeninfo(#20086,6,#20001,29,"b6") #20087=@"loc,{#10000},11,5,11,6" locations_default(#20087,#10000,11,5,11,6) hasLocation(#20086,#20087) #20088=* tokeninfo(#20088,8,#20001,30,"[") #20089=@"loc,{#10000},11,7,11,7" locations_default(#20089,#10000,11,7,11,7) hasLocation(#20088,#20089) #20090=* tokeninfo(#20090,6,#20001,31,"x6") #20091=@"loc,{#10000},11,8,11,9" locations_default(#20091,#10000,11,8,11,9) hasLocation(#20090,#20091) #20092=* tokeninfo(#20092,8,#20001,32,"]") #20093=@"loc,{#10000},11,10,11,10" locations_default(#20093,#10000,11,10,11,10) hasLocation(#20092,#20093) #20094=* tokeninfo(#20094,8,#20001,33,".") #20095=@"loc,{#10000},11,11,11,11" locations_default(#20095,#10000,11,11,11,11) hasLocation(#20094,#20095) #20096=* tokeninfo(#20096,6,#20001,34,"c6") #20097=@"loc,{#10000},11,12,11,13" locations_default(#20097,#10000,11,12,11,13) hasLocation(#20096,#20097) #20098=* tokeninfo(#20098,8,#20001,35,"?.") #20099=@"loc,{#10000},11,14,11,15" locations_default(#20099,#10000,11,14,11,15) hasLocation(#20098,#20099) #20100=* tokeninfo(#20100,8,#20001,36,"(") #20101=@"loc,{#10000},11,16,11,16" locations_default(#20101,#10000,11,16,11,16) hasLocation(#20100,#20101) #20102=* tokeninfo(#20102,6,#20001,37,"y6") #20103=@"loc,{#10000},11,17,11,18" locations_default(#20103,#10000,11,17,11,18) hasLocation(#20102,#20103) #20104=* tokeninfo(#20104,8,#20001,38,")") #20105=@"loc,{#10000},11,19,11,19" locations_default(#20105,#10000,11,19,11,19) hasLocation(#20104,#20105) #20106=* tokeninfo(#20106,8,#20001,39,".") #20107=@"loc,{#10000},11,20,11,20" locations_default(#20107,#10000,11,20,11,20) hasLocation(#20106,#20107) #20108=* tokeninfo(#20108,6,#20001,40,"d6") #20109=@"loc,{#10000},11,21,11,22" locations_default(#20109,#10000,11,21,11,22) hasLocation(#20108,#20109) #20110=* tokeninfo(#20110,8,#20001,41,";") #20111=@"loc,{#10000},11,23,11,23" locations_default(#20111,#10000,11,23,11,23) hasLocation(#20110,#20111) #20112=* tokeninfo(#20112,7,#20001,42,"delete") #20113=@"loc,{#10000},13,1,13,6" locations_default(#20113,#10000,13,1,13,6) hasLocation(#20112,#20113) #20114=* tokeninfo(#20114,6,#20001,43,"a") #20115=@"loc,{#10000},13,8,13,8" locations_default(#20115,#10000,13,8,13,8) hasLocation(#20114,#20115) #20116=* tokeninfo(#20116,8,#20001,44,"?.") #20117=@"loc,{#10000},13,9,13,10" locations_default(#20117,#10000,13,9,13,10) hasLocation(#20116,#20117) #20118=* tokeninfo(#20118,6,#20001,45,"b") #20119=@"loc,{#10000},13,11,13,11" locations_default(#20119,#10000,13,11,13,11) hasLocation(#20118,#20119) #20120=* tokeninfo(#20120,0,#20001,46,"") #20121=@"loc,{#10000},13,12,13,11" locations_default(#20121,#10000,13,12,13,11) hasLocation(#20120,#20121) toplevels(#20001,0) #20122=@"loc,{#10000},1,1,13,11" locations_default(#20122,#10000,1,1,13,11) hasLocation(#20001,#20122) #20123=@"var;{this};{#20000}" variables(#20123,"this",#20000) #20124=* stmts(#20124,2,#20001,0,"a1?.b1;") hasLocation(#20124,#20003) stmt_containers(#20124,#20001) #20125=* exprs(#20125,14,#20124,0,"a1?.b1") #20126=@"loc,{#10000},1,1,1,6" locations_default(#20126,#10000,1,1,1,6) hasLocation(#20125,#20126) enclosing_stmt(#20125,#20124) expr_containers(#20125,#20001) #20127=* exprs(#20127,79,#20125,0,"a1") hasLocation(#20127,#20029) enclosing_stmt(#20127,#20124) expr_containers(#20127,#20001) literals("a1","a1",#20127) #20128=@"var;{a1};{#20000}" variables(#20128,"a1",#20000) bind(#20127,#20128) #20129=* exprs(#20129,0,#20125,1,"b1") hasLocation(#20129,#20033) enclosing_stmt(#20129,#20124) expr_containers(#20129,#20001) literals("b1","b1",#20129) isOptionalChaining(#20125) #20130=* stmts(#20130,2,#20001,1,"a2?.[x2];") hasLocation(#20130,#20007) stmt_containers(#20130,#20001) #20131=* exprs(#20131,15,#20130,0,"a2?.[x2]") #20132=@"loc,{#10000},3,1,3,8" locations_default(#20132,#10000,3,1,3,8) hasLocation(#20131,#20132) enclosing_stmt(#20131,#20130) expr_containers(#20131,#20001) #20133=* exprs(#20133,79,#20131,0,"a2") hasLocation(#20133,#20037) enclosing_stmt(#20133,#20130) expr_containers(#20133,#20001) literals("a2","a2",#20133) #20134=@"var;{a2};{#20000}" variables(#20134,"a2",#20000) bind(#20133,#20134) #20135=* exprs(#20135,79,#20131,1,"x2") hasLocation(#20135,#20043) enclosing_stmt(#20135,#20130) expr_containers(#20135,#20001) literals("x2","x2",#20135) #20136=@"var;{x2};{#20000}" variables(#20136,"x2",#20000) bind(#20135,#20136) isOptionalChaining(#20131) #20137=* stmts(#20137,2,#20001,2,"a3?.b3();") hasLocation(#20137,#20011) stmt_containers(#20137,#20001) #20138=* exprs(#20138,13,#20137,0,"a3?.b3()") #20139=@"loc,{#10000},5,1,5,8" locations_default(#20139,#10000,5,1,5,8) hasLocation(#20138,#20139) enclosing_stmt(#20138,#20137) expr_containers(#20138,#20001) #20140=* exprs(#20140,14,#20138,-1,"a3?.b3") #20141=@"loc,{#10000},5,1,5,6" locations_default(#20141,#10000,5,1,5,6) hasLocation(#20140,#20141) enclosing_stmt(#20140,#20137) expr_containers(#20140,#20001) #20142=* exprs(#20142,79,#20140,0,"a3") hasLocation(#20142,#20049) enclosing_stmt(#20142,#20137) expr_containers(#20142,#20001) literals("a3","a3",#20142) #20143=@"var;{a3};{#20000}" variables(#20143,"a3",#20000) bind(#20142,#20143) #20144=* exprs(#20144,0,#20140,1,"b3") hasLocation(#20144,#20053) enclosing_stmt(#20144,#20137) expr_containers(#20144,#20001) literals("b3","b3",#20144) isOptionalChaining(#20140) #20145=* stmts(#20145,2,#20001,3,"a4?.();") hasLocation(#20145,#20015) stmt_containers(#20145,#20001) #20146=* exprs(#20146,13,#20145,0,"a4?.()") #20147=@"loc,{#10000},7,1,7,6" locations_default(#20147,#10000,7,1,7,6) hasLocation(#20146,#20147) enclosing_stmt(#20146,#20145) expr_containers(#20146,#20001) #20148=* exprs(#20148,79,#20146,-1,"a4") hasLocation(#20148,#20061) enclosing_stmt(#20148,#20145) expr_containers(#20148,#20001) literals("a4","a4",#20148) #20149=@"var;{a4};{#20000}" variables(#20149,"a4",#20000) bind(#20148,#20149) isOptionalChaining(#20146) #20150=* stmts(#20150,2,#20001,4,"o5?.3:2;") hasLocation(#20150,#20019) stmt_containers(#20150,#20001) #20151=* exprs(#20151,11,#20150,0,"o5?.3:2") #20152=@"loc,{#10000},9,1,9,7" locations_default(#20152,#10000,9,1,9,7) hasLocation(#20151,#20152) enclosing_stmt(#20151,#20150) expr_containers(#20151,#20001) #20153=* exprs(#20153,79,#20151,0,"o5") hasLocation(#20153,#20071) enclosing_stmt(#20153,#20150) expr_containers(#20153,#20001) literals("o5","o5",#20153) #20154=@"var;{o5};{#20000}" variables(#20154,"o5",#20000) bind(#20153,#20154) #20155=* exprs(#20155,3,#20151,1,".3") hasLocation(#20155,#20075) enclosing_stmt(#20155,#20150) expr_containers(#20155,#20001) literals("0.3",".3",#20155) #20156=* exprs(#20156,3,#20151,2,"2") hasLocation(#20156,#20079) enclosing_stmt(#20156,#20150) expr_containers(#20156,#20001) literals("2","2",#20156) #20157=* stmts(#20157,2,#20001,5,"a6?.b6[ ... y6).d6;") hasLocation(#20157,#20023) stmt_containers(#20157,#20001) #20158=* exprs(#20158,14,#20157,0,"a6?.b6[ ... (y6).d6") #20159=@"loc,{#10000},11,1,11,22" locations_default(#20159,#10000,11,1,11,22) hasLocation(#20158,#20159) enclosing_stmt(#20158,#20157) expr_containers(#20158,#20001) #20160=* exprs(#20160,13,#20158,0,"a6?.b6[x6].c6?.(y6)") #20161=@"loc,{#10000},11,1,11,19" locations_default(#20161,#10000,11,1,11,19) hasLocation(#20160,#20161) enclosing_stmt(#20160,#20157) expr_containers(#20160,#20001) #20162=* exprs(#20162,14,#20160,-1,"a6?.b6[x6].c6") #20163=@"loc,{#10000},11,1,11,13" locations_default(#20163,#10000,11,1,11,13) hasLocation(#20162,#20163) enclosing_stmt(#20162,#20157) expr_containers(#20162,#20001) #20164=* exprs(#20164,15,#20162,0,"a6?.b6[x6]") #20165=@"loc,{#10000},11,1,11,10" locations_default(#20165,#10000,11,1,11,10) hasLocation(#20164,#20165) enclosing_stmt(#20164,#20157) expr_containers(#20164,#20001) #20166=* exprs(#20166,14,#20164,0,"a6?.b6") #20167=@"loc,{#10000},11,1,11,6" locations_default(#20167,#10000,11,1,11,6) hasLocation(#20166,#20167) enclosing_stmt(#20166,#20157) expr_containers(#20166,#20001) #20168=* exprs(#20168,79,#20166,0,"a6") hasLocation(#20168,#20083) enclosing_stmt(#20168,#20157) expr_containers(#20168,#20001) literals("a6","a6",#20168) #20169=@"var;{a6};{#20000}" variables(#20169,"a6",#20000) bind(#20168,#20169) #20170=* exprs(#20170,0,#20166,1,"b6") hasLocation(#20170,#20087) enclosing_stmt(#20170,#20157) expr_containers(#20170,#20001) literals("b6","b6",#20170) isOptionalChaining(#20166) #20171=* exprs(#20171,79,#20164,1,"x6") hasLocation(#20171,#20091) enclosing_stmt(#20171,#20157) expr_containers(#20171,#20001) literals("x6","x6",#20171) #20172=@"var;{x6};{#20000}" variables(#20172,"x6",#20000) bind(#20171,#20172) #20173=* exprs(#20173,0,#20162,1,"c6") hasLocation(#20173,#20097) enclosing_stmt(#20173,#20157) expr_containers(#20173,#20001) literals("c6","c6",#20173) #20174=* exprs(#20174,79,#20160,0,"y6") hasLocation(#20174,#20103) enclosing_stmt(#20174,#20157) expr_containers(#20174,#20001) literals("y6","y6",#20174) #20175=@"var;{y6};{#20000}" variables(#20175,"y6",#20000) bind(#20174,#20175) isOptionalChaining(#20160) #20176=* exprs(#20176,0,#20158,1,"d6") hasLocation(#20176,#20109) enclosing_stmt(#20176,#20157) expr_containers(#20176,#20001) literals("d6","d6",#20176) #20177=* stmts(#20177,2,#20001,6,"delete a?.b") hasLocation(#20177,#20027) stmt_containers(#20177,#20001) #20178=* exprs(#20178,22,#20177,0,"delete a?.b") hasLocation(#20178,#20027) enclosing_stmt(#20178,#20177) expr_containers(#20178,#20001) #20179=* exprs(#20179,14,#20178,0,"a?.b") #20180=@"loc,{#10000},13,8,13,11" locations_default(#20180,#10000,13,8,13,11) hasLocation(#20179,#20180) enclosing_stmt(#20179,#20177) expr_containers(#20179,#20001) #20181=* exprs(#20181,79,#20179,0,"a") hasLocation(#20181,#20115) enclosing_stmt(#20181,#20177) expr_containers(#20181,#20001) literals("a","a",#20181) #20182=@"var;{a};{#20000}" variables(#20182,"a",#20000) bind(#20181,#20182) #20183=* exprs(#20183,0,#20179,1,"b") hasLocation(#20183,#20119) enclosing_stmt(#20183,#20177) expr_containers(#20183,#20001) literals("b","b",#20183) isOptionalChaining(#20179) #20184=* entry_cfg_node(#20184,#20001) #20185=@"loc,{#10000},1,1,1,0" locations_default(#20185,#10000,1,1,1,0) hasLocation(#20184,#20185) #20186=* exit_cfg_node(#20186,#20001) hasLocation(#20186,#20121) successor(#20177,#20181) successor(#20183,#20179) successor(#20181,#20183) successor(#20179,#20178) successor(#20181,#20178) successor(#20178,#20186) successor(#20157,#20168) successor(#20176,#20158) successor(#20174,#20160) successor(#20173,#20162) successor(#20171,#20164) successor(#20170,#20166) successor(#20168,#20170) successor(#20166,#20171) successor(#20168,#20177) successor(#20164,#20173) successor(#20162,#20174) successor(#20160,#20176) successor(#20162,#20177) successor(#20158,#20177) successor(#20150,#20151) successor(#20151,#20153) #20187=* guard_node(#20187,1,#20153) hasLocation(#20187,#20071) successor(#20187,#20155) #20188=* guard_node(#20188,0,#20153) hasLocation(#20188,#20071) successor(#20188,#20156) successor(#20153,#20187) successor(#20153,#20188) successor(#20155,#20157) successor(#20156,#20157) successor(#20145,#20148) successor(#20148,#20146) successor(#20146,#20150) successor(#20148,#20150) successor(#20137,#20142) successor(#20144,#20140) successor(#20142,#20144) successor(#20140,#20138) successor(#20142,#20145) successor(#20138,#20145) successor(#20130,#20133) successor(#20135,#20131) successor(#20133,#20135) successor(#20131,#20137) successor(#20133,#20137) successor(#20124,#20127) successor(#20129,#20125) successor(#20127,#20129) successor(#20125,#20130) successor(#20127,#20130) successor(#20184,#20124) numlines(#10000,13,7,0) filetype(#10000,"javascript")