#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=* stmts(#20123,2,#20001,0,"a1?.b1;") hasLocation(#20123,#20003) stmt_containers(#20123,#20001) #20124=* exprs(#20124,14,#20123,0,"a1?.b1") #20125=@"loc,{#10000},1,1,1,6" locations_default(#20125,#10000,1,1,1,6) hasLocation(#20124,#20125) enclosing_stmt(#20124,#20123) expr_containers(#20124,#20001) #20126=* exprs(#20126,79,#20124,0,"a1") hasLocation(#20126,#20029) enclosing_stmt(#20126,#20123) expr_containers(#20126,#20001) literals("a1","a1",#20126) #20127=@"var;{a1};{#20000}" variables(#20127,"a1",#20000) bind(#20126,#20127) #20128=* exprs(#20128,0,#20124,1,"b1") hasLocation(#20128,#20033) enclosing_stmt(#20128,#20123) expr_containers(#20128,#20001) literals("b1","b1",#20128) isOptionalChaining(#20124) #20129=* stmts(#20129,2,#20001,1,"a2?.[x2];") hasLocation(#20129,#20007) stmt_containers(#20129,#20001) #20130=* exprs(#20130,15,#20129,0,"a2?.[x2]") #20131=@"loc,{#10000},3,1,3,8" locations_default(#20131,#10000,3,1,3,8) hasLocation(#20130,#20131) enclosing_stmt(#20130,#20129) expr_containers(#20130,#20001) #20132=* exprs(#20132,79,#20130,0,"a2") hasLocation(#20132,#20037) enclosing_stmt(#20132,#20129) expr_containers(#20132,#20001) literals("a2","a2",#20132) #20133=@"var;{a2};{#20000}" variables(#20133,"a2",#20000) bind(#20132,#20133) #20134=* exprs(#20134,79,#20130,1,"x2") hasLocation(#20134,#20043) enclosing_stmt(#20134,#20129) expr_containers(#20134,#20001) literals("x2","x2",#20134) #20135=@"var;{x2};{#20000}" variables(#20135,"x2",#20000) bind(#20134,#20135) isOptionalChaining(#20130) #20136=* stmts(#20136,2,#20001,2,"a3?.b3();") hasLocation(#20136,#20011) stmt_containers(#20136,#20001) #20137=* exprs(#20137,13,#20136,0,"a3?.b3()") #20138=@"loc,{#10000},5,1,5,8" locations_default(#20138,#10000,5,1,5,8) hasLocation(#20137,#20138) enclosing_stmt(#20137,#20136) expr_containers(#20137,#20001) #20139=* exprs(#20139,14,#20137,-1,"a3?.b3") #20140=@"loc,{#10000},5,1,5,6" locations_default(#20140,#10000,5,1,5,6) hasLocation(#20139,#20140) enclosing_stmt(#20139,#20136) expr_containers(#20139,#20001) #20141=* exprs(#20141,79,#20139,0,"a3") hasLocation(#20141,#20049) enclosing_stmt(#20141,#20136) expr_containers(#20141,#20001) literals("a3","a3",#20141) #20142=@"var;{a3};{#20000}" variables(#20142,"a3",#20000) bind(#20141,#20142) #20143=* exprs(#20143,0,#20139,1,"b3") hasLocation(#20143,#20053) enclosing_stmt(#20143,#20136) expr_containers(#20143,#20001) literals("b3","b3",#20143) isOptionalChaining(#20139) #20144=* stmts(#20144,2,#20001,3,"a4?.();") hasLocation(#20144,#20015) stmt_containers(#20144,#20001) #20145=* exprs(#20145,13,#20144,0,"a4?.()") #20146=@"loc,{#10000},7,1,7,6" locations_default(#20146,#10000,7,1,7,6) hasLocation(#20145,#20146) enclosing_stmt(#20145,#20144) expr_containers(#20145,#20001) #20147=* exprs(#20147,79,#20145,-1,"a4") hasLocation(#20147,#20061) enclosing_stmt(#20147,#20144) expr_containers(#20147,#20001) literals("a4","a4",#20147) #20148=@"var;{a4};{#20000}" variables(#20148,"a4",#20000) bind(#20147,#20148) isOptionalChaining(#20145) #20149=* stmts(#20149,2,#20001,4,"o5?.3:2;") hasLocation(#20149,#20019) stmt_containers(#20149,#20001) #20150=* exprs(#20150,11,#20149,0,"o5?.3:2") #20151=@"loc,{#10000},9,1,9,7" locations_default(#20151,#10000,9,1,9,7) hasLocation(#20150,#20151) enclosing_stmt(#20150,#20149) expr_containers(#20150,#20001) #20152=* exprs(#20152,79,#20150,0,"o5") hasLocation(#20152,#20071) enclosing_stmt(#20152,#20149) expr_containers(#20152,#20001) literals("o5","o5",#20152) #20153=@"var;{o5};{#20000}" variables(#20153,"o5",#20000) bind(#20152,#20153) #20154=* exprs(#20154,3,#20150,1,".3") hasLocation(#20154,#20075) enclosing_stmt(#20154,#20149) expr_containers(#20154,#20001) literals("0.3",".3",#20154) #20155=* exprs(#20155,3,#20150,2,"2") hasLocation(#20155,#20079) enclosing_stmt(#20155,#20149) expr_containers(#20155,#20001) literals("2","2",#20155) #20156=* stmts(#20156,2,#20001,5,"a6?.b6[ ... y6).d6;") hasLocation(#20156,#20023) stmt_containers(#20156,#20001) #20157=* exprs(#20157,14,#20156,0,"a6?.b6[ ... (y6).d6") #20158=@"loc,{#10000},11,1,11,22" locations_default(#20158,#10000,11,1,11,22) hasLocation(#20157,#20158) enclosing_stmt(#20157,#20156) expr_containers(#20157,#20001) #20159=* exprs(#20159,13,#20157,0,"a6?.b6[x6].c6?.(y6)") #20160=@"loc,{#10000},11,1,11,19" locations_default(#20160,#10000,11,1,11,19) hasLocation(#20159,#20160) enclosing_stmt(#20159,#20156) expr_containers(#20159,#20001) #20161=* exprs(#20161,14,#20159,-1,"a6?.b6[x6].c6") #20162=@"loc,{#10000},11,1,11,13" locations_default(#20162,#10000,11,1,11,13) hasLocation(#20161,#20162) enclosing_stmt(#20161,#20156) expr_containers(#20161,#20001) #20163=* exprs(#20163,15,#20161,0,"a6?.b6[x6]") #20164=@"loc,{#10000},11,1,11,10" locations_default(#20164,#10000,11,1,11,10) hasLocation(#20163,#20164) enclosing_stmt(#20163,#20156) expr_containers(#20163,#20001) #20165=* exprs(#20165,14,#20163,0,"a6?.b6") #20166=@"loc,{#10000},11,1,11,6" locations_default(#20166,#10000,11,1,11,6) hasLocation(#20165,#20166) enclosing_stmt(#20165,#20156) expr_containers(#20165,#20001) #20167=* exprs(#20167,79,#20165,0,"a6") hasLocation(#20167,#20083) enclosing_stmt(#20167,#20156) expr_containers(#20167,#20001) literals("a6","a6",#20167) #20168=@"var;{a6};{#20000}" variables(#20168,"a6",#20000) bind(#20167,#20168) #20169=* exprs(#20169,0,#20165,1,"b6") hasLocation(#20169,#20087) enclosing_stmt(#20169,#20156) expr_containers(#20169,#20001) literals("b6","b6",#20169) isOptionalChaining(#20165) #20170=* exprs(#20170,79,#20163,1,"x6") hasLocation(#20170,#20091) enclosing_stmt(#20170,#20156) expr_containers(#20170,#20001) literals("x6","x6",#20170) #20171=@"var;{x6};{#20000}" variables(#20171,"x6",#20000) bind(#20170,#20171) #20172=* exprs(#20172,0,#20161,1,"c6") hasLocation(#20172,#20097) enclosing_stmt(#20172,#20156) expr_containers(#20172,#20001) literals("c6","c6",#20172) #20173=* exprs(#20173,79,#20159,0,"y6") hasLocation(#20173,#20103) enclosing_stmt(#20173,#20156) expr_containers(#20173,#20001) literals("y6","y6",#20173) #20174=@"var;{y6};{#20000}" variables(#20174,"y6",#20000) bind(#20173,#20174) isOptionalChaining(#20159) #20175=* exprs(#20175,0,#20157,1,"d6") hasLocation(#20175,#20109) enclosing_stmt(#20175,#20156) expr_containers(#20175,#20001) literals("d6","d6",#20175) #20176=* stmts(#20176,2,#20001,6,"delete a?.b") hasLocation(#20176,#20027) stmt_containers(#20176,#20001) #20177=* exprs(#20177,22,#20176,0,"delete a?.b") hasLocation(#20177,#20027) enclosing_stmt(#20177,#20176) expr_containers(#20177,#20001) #20178=* exprs(#20178,14,#20177,0,"a?.b") #20179=@"loc,{#10000},13,8,13,11" locations_default(#20179,#10000,13,8,13,11) hasLocation(#20178,#20179) enclosing_stmt(#20178,#20176) expr_containers(#20178,#20001) #20180=* exprs(#20180,79,#20178,0,"a") hasLocation(#20180,#20115) enclosing_stmt(#20180,#20176) expr_containers(#20180,#20001) literals("a","a",#20180) #20181=@"var;{a};{#20000}" variables(#20181,"a",#20000) bind(#20180,#20181) #20182=* exprs(#20182,0,#20178,1,"b") hasLocation(#20182,#20119) enclosing_stmt(#20182,#20176) expr_containers(#20182,#20001) literals("b","b",#20182) isOptionalChaining(#20178) #20183=* entry_cfg_node(#20183,#20001) #20184=@"loc,{#10000},1,1,1,0" locations_default(#20184,#10000,1,1,1,0) hasLocation(#20183,#20184) #20185=* exit_cfg_node(#20185,#20001) hasLocation(#20185,#20121) successor(#20176,#20180) successor(#20182,#20178) successor(#20180,#20182) successor(#20178,#20177) successor(#20180,#20177) successor(#20177,#20185) successor(#20156,#20167) successor(#20175,#20157) successor(#20173,#20159) successor(#20172,#20161) successor(#20170,#20163) successor(#20169,#20165) successor(#20167,#20169) successor(#20165,#20170) successor(#20167,#20176) successor(#20163,#20172) successor(#20161,#20173) successor(#20159,#20175) successor(#20161,#20176) successor(#20157,#20176) successor(#20149,#20150) successor(#20150,#20152) #20186=* guard_node(#20186,1,#20152) hasLocation(#20186,#20071) successor(#20186,#20154) #20187=* guard_node(#20187,0,#20152) hasLocation(#20187,#20071) successor(#20187,#20155) successor(#20152,#20186) successor(#20152,#20187) successor(#20154,#20156) successor(#20155,#20156) successor(#20144,#20147) successor(#20147,#20145) successor(#20145,#20149) successor(#20147,#20149) successor(#20136,#20141) successor(#20143,#20139) successor(#20141,#20143) successor(#20139,#20137) successor(#20141,#20144) successor(#20137,#20144) successor(#20129,#20132) successor(#20134,#20130) successor(#20132,#20134) successor(#20130,#20136) successor(#20132,#20136) successor(#20123,#20126) successor(#20128,#20124) successor(#20126,#20128) successor(#20124,#20129) successor(#20126,#20129) successor(#20183,#20123) numlines(#10000,13,7,0) filetype(#10000,"javascript")