#10000=@"/intersection.js;sourcefile" files(#10000,"/intersection.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=* comments(#20002,0,#20001," Valid use of intersection operator, matches b or c","// Vali ... b or c") #20003=@"loc,{#10000},1,20,1,72" locations_default(#20003,#10000,1,20,1,72) hasLocation(#20002,#20003) #20004=* comments(#20004,0,#20001,"Valid regex, but no intersection operation: Matches the literal string ""abc&&bcd""","//Valid ... c&&bcd""") #20005=@"loc,{#10000},2,14,2,96" locations_default(#20005,#10000,2,14,2,96) hasLocation(#20004,#20005) #20006=* comments(#20006,0,#20001," Valid regex, but incorrect intersection operation: ","// Vali ... ation: ") #20007=@"loc,{#10000},3,18,3,71" locations_default(#20007,#10000,3,18,3,71) hasLocation(#20006,#20007) #20008=* comments(#20008,0,#20001," - Matches a single character from [abc]","// - Ma ... m [abc]") #20009=@"loc,{#10000},4,18,4,59" locations_default(#20009,#10000,4,18,4,59) hasLocation(#20008,#20009) #20010=* comments(#20010,0,#20001," - Then the literal ""&&""","// - Th ... al ""&&""") #20011=@"loc,{#10000},5,18,5,43" locations_default(#20011,#10000,5,18,5,43) hasLocation(#20010,#20011) #20012=* comments(#20012,0,#20001," - Then a single character from [bcd]","// - Th ... m [bcd]") #20013=@"loc,{#10000},6,18,6,56" locations_default(#20013,#10000,6,18,6,56) hasLocation(#20012,#20013) #20014=* comments(#20014,0,#20001," Valid use of intersection operator, matches c","// Vali ... tches c") #20015=@"loc,{#10000},7,25,7,72" locations_default(#20015,#10000,7,25,7,72) hasLocation(#20014,#20015) #20016=* lines(#20016,#20001,"/[[abc]&&[bcd]]/v; // Valid use of intersection operator, matches b or c"," ") #20017=@"loc,{#10000},1,1,1,72" locations_default(#20017,#10000,1,1,1,72) hasLocation(#20016,#20017) #20018=* lines(#20018,#20001,"/abc&&bcd/v; //Valid regex, but no intersection operation: Matches the literal string ""abc&&bcd"""," ") #20019=@"loc,{#10000},2,1,2,96" locations_default(#20019,#10000,2,1,2,96) hasLocation(#20018,#20019) #20020=* lines(#20020,#20001,"/[abc]&&[bcd]/v; // Valid regex, but incorrect intersection operation: "," ") #20021=@"loc,{#10000},3,1,3,71" locations_default(#20021,#10000,3,1,3,71) hasLocation(#20020,#20021) #20022=* lines(#20022,#20001," // - Matches a single character from [abc]"," ") #20023=@"loc,{#10000},4,1,4,59" locations_default(#20023,#10000,4,1,4,59) hasLocation(#20022,#20023) indentation(#10000,4," ",17) #20024=* lines(#20024,#20001," // - Then the literal ""&&"""," ") #20025=@"loc,{#10000},5,1,5,43" locations_default(#20025,#10000,5,1,5,43) hasLocation(#20024,#20025) indentation(#10000,5," ",17) #20026=* lines(#20026,#20001," // - Then a single character from [bcd]"," ") #20027=@"loc,{#10000},6,1,6,56" locations_default(#20027,#10000,6,1,6,56) hasLocation(#20026,#20027) indentation(#10000,6," ",17) #20028=* lines(#20028,#20001,"/[[abc]&&[bcd]&&[c]]/v; // Valid use of intersection operator, matches c"," ") #20029=@"loc,{#10000},7,1,7,72" locations_default(#20029,#10000,7,1,7,72) hasLocation(#20028,#20029) numlines(#20001,7,4,7) #20030=* tokeninfo(#20030,5,#20001,0,"/[[abc]&&[bcd]]/v") #20031=@"loc,{#10000},1,1,1,17" locations_default(#20031,#10000,1,1,1,17) hasLocation(#20030,#20031) #20032=* tokeninfo(#20032,8,#20001,1,";") #20033=@"loc,{#10000},1,18,1,18" locations_default(#20033,#10000,1,18,1,18) hasLocation(#20032,#20033) #20034=* tokeninfo(#20034,5,#20001,2,"/abc&&bcd/v") #20035=@"loc,{#10000},2,1,2,11" locations_default(#20035,#10000,2,1,2,11) hasLocation(#20034,#20035) next_token(#20002,#20034) #20036=* tokeninfo(#20036,8,#20001,3,";") #20037=@"loc,{#10000},2,12,2,12" locations_default(#20037,#10000,2,12,2,12) hasLocation(#20036,#20037) #20038=* tokeninfo(#20038,5,#20001,4,"/[abc]&&[bcd]/v") #20039=@"loc,{#10000},3,1,3,15" locations_default(#20039,#10000,3,1,3,15) hasLocation(#20038,#20039) next_token(#20004,#20038) #20040=* tokeninfo(#20040,8,#20001,5,";") #20041=@"loc,{#10000},3,16,3,16" locations_default(#20041,#10000,3,16,3,16) hasLocation(#20040,#20041) #20042=* tokeninfo(#20042,5,#20001,6,"/[[abc]&&[bcd]&&[c]]/v") #20043=@"loc,{#10000},7,1,7,22" locations_default(#20043,#10000,7,1,7,22) hasLocation(#20042,#20043) next_token(#20006,#20042) next_token(#20008,#20042) next_token(#20010,#20042) next_token(#20012,#20042) #20044=* tokeninfo(#20044,8,#20001,7,";") #20045=@"loc,{#10000},7,23,7,23" locations_default(#20045,#10000,7,23,7,23) hasLocation(#20044,#20045) #20046=* tokeninfo(#20046,0,#20001,8,"") #20047=@"loc,{#10000},8,1,8,0" locations_default(#20047,#10000,8,1,8,0) hasLocation(#20046,#20047) next_token(#20014,#20046) toplevels(#20001,0) #20048=@"loc,{#10000},1,1,8,0" locations_default(#20048,#10000,1,1,8,0) hasLocation(#20001,#20048) #20049=@"var;{this};{#20000}" variables(#20049,"this",#20000) #20050=* stmts(#20050,2,#20001,0,"/[[abc]&&[bcd]]/v;") #20051=@"loc,{#10000},1,1,1,18" locations_default(#20051,#10000,1,1,1,18) hasLocation(#20050,#20051) stmt_containers(#20050,#20001) #20052=* exprs(#20052,5,#20050,0,"/[[abc]&&[bcd]]/v") hasLocation(#20052,#20031) enclosing_stmt(#20052,#20050) expr_containers(#20052,#20001) literals("/[[abc]&&[bcd]]/v","/[[abc]&&[bcd]]/v",#20052) #20053=* regexpterm(#20053,23,#20052,0,"[[abc]&&[bcd]]") #20054=@"loc,{#10000},1,2,1,15" locations_default(#20054,#10000,1,2,1,15) hasLocation(#20053,#20054) #20055=* regexpterm(#20055,29,#20053,0,"[[abc]&&[bcd]]") hasLocation(#20055,#20054) #20056=* regexpterm(#20056,23,#20055,0,"[abc]") #20057=@"loc,{#10000},1,3,1,7" locations_default(#20057,#10000,1,3,1,7) hasLocation(#20056,#20057) #20058=* regexpterm(#20058,14,#20056,0,"a") #20059=@"loc,{#10000},1,4,1,4" locations_default(#20059,#10000,1,4,1,4) hasLocation(#20058,#20059) regexp_const_value(#20058,"a") #20060=* regexpterm(#20060,14,#20056,1,"b") #20061=@"loc,{#10000},1,5,1,5" locations_default(#20061,#10000,1,5,1,5) hasLocation(#20060,#20061) regexp_const_value(#20060,"b") #20062=* regexpterm(#20062,14,#20056,2,"c") #20063=@"loc,{#10000},1,6,1,6" locations_default(#20063,#10000,1,6,1,6) hasLocation(#20062,#20063) regexp_const_value(#20062,"c") #20064=* regexpterm(#20064,23,#20055,1,"[bcd]") #20065=@"loc,{#10000},1,10,1,14" locations_default(#20065,#10000,1,10,1,14) hasLocation(#20064,#20065) #20066=* regexpterm(#20066,14,#20064,0,"b") #20067=@"loc,{#10000},1,11,1,11" locations_default(#20067,#10000,1,11,1,11) hasLocation(#20066,#20067) regexp_const_value(#20066,"b") #20068=* regexpterm(#20068,14,#20064,1,"c") #20069=@"loc,{#10000},1,12,1,12" locations_default(#20069,#10000,1,12,1,12) hasLocation(#20068,#20069) regexp_const_value(#20068,"c") #20070=* regexpterm(#20070,14,#20064,2,"d") #20071=@"loc,{#10000},1,13,1,13" locations_default(#20071,#10000,1,13,1,13) hasLocation(#20070,#20071) regexp_const_value(#20070,"d") #20072=* stmts(#20072,2,#20001,1,"/abc&&bcd/v;") #20073=@"loc,{#10000},2,1,2,12" locations_default(#20073,#10000,2,1,2,12) hasLocation(#20072,#20073) stmt_containers(#20072,#20001) #20074=* exprs(#20074,5,#20072,0,"/abc&&bcd/v") hasLocation(#20074,#20035) enclosing_stmt(#20074,#20072) expr_containers(#20074,#20001) literals("/abc&&bcd/v","/abc&&bcd/v",#20074) #20075=* regexpterm(#20075,14,#20074,0,"abc&&bcd") #20076=@"loc,{#10000},2,2,2,9" locations_default(#20076,#10000,2,2,2,9) hasLocation(#20075,#20076) regexp_const_value(#20075,"abc&&bcd") #20077=* stmts(#20077,2,#20001,2,"/[abc]&&[bcd]/v;") #20078=@"loc,{#10000},3,1,3,16" locations_default(#20078,#10000,3,1,3,16) hasLocation(#20077,#20078) stmt_containers(#20077,#20001) #20079=* exprs(#20079,5,#20077,0,"/[abc]&&[bcd]/v") hasLocation(#20079,#20039) enclosing_stmt(#20079,#20077) expr_containers(#20079,#20001) literals("/[abc]&&[bcd]/v","/[abc]&&[bcd]/v",#20079) #20080=* regexpterm(#20080,1,#20079,0,"[abc]&&[bcd]") #20081=@"loc,{#10000},3,2,3,13" locations_default(#20081,#10000,3,2,3,13) hasLocation(#20080,#20081) #20082=* regexpterm(#20082,23,#20080,0,"[abc]") #20083=@"loc,{#10000},3,2,3,6" locations_default(#20083,#10000,3,2,3,6) hasLocation(#20082,#20083) #20084=* regexpterm(#20084,14,#20082,0,"a") #20085=@"loc,{#10000},3,3,3,3" locations_default(#20085,#10000,3,3,3,3) hasLocation(#20084,#20085) regexp_const_value(#20084,"a") #20086=* regexpterm(#20086,14,#20082,1,"b") #20087=@"loc,{#10000},3,4,3,4" locations_default(#20087,#10000,3,4,3,4) hasLocation(#20086,#20087) regexp_const_value(#20086,"b") #20088=* regexpterm(#20088,14,#20082,2,"c") #20089=@"loc,{#10000},3,5,3,5" locations_default(#20089,#10000,3,5,3,5) hasLocation(#20088,#20089) regexp_const_value(#20088,"c") #20090=* regexpterm(#20090,14,#20080,1,"&&") #20091=@"loc,{#10000},3,7,3,8" locations_default(#20091,#10000,3,7,3,8) hasLocation(#20090,#20091) regexp_const_value(#20090,"&&") #20092=* regexpterm(#20092,23,#20080,2,"[bcd]") #20093=@"loc,{#10000},3,9,3,13" locations_default(#20093,#10000,3,9,3,13) hasLocation(#20092,#20093) #20094=* regexpterm(#20094,14,#20092,0,"b") #20095=@"loc,{#10000},3,10,3,10" locations_default(#20095,#10000,3,10,3,10) hasLocation(#20094,#20095) regexp_const_value(#20094,"b") #20096=* regexpterm(#20096,14,#20092,1,"c") #20097=@"loc,{#10000},3,11,3,11" locations_default(#20097,#10000,3,11,3,11) hasLocation(#20096,#20097) regexp_const_value(#20096,"c") #20098=* regexpterm(#20098,14,#20092,2,"d") #20099=@"loc,{#10000},3,12,3,12" locations_default(#20099,#10000,3,12,3,12) hasLocation(#20098,#20099) regexp_const_value(#20098,"d") #20100=* stmts(#20100,2,#20001,3,"/[[abc] ... [c]]/v;") #20101=@"loc,{#10000},7,1,7,23" locations_default(#20101,#10000,7,1,7,23) hasLocation(#20100,#20101) stmt_containers(#20100,#20001) #20102=* exprs(#20102,5,#20100,0,"/[[abc] ... &[c]]/v") hasLocation(#20102,#20043) enclosing_stmt(#20102,#20100) expr_containers(#20102,#20001) literals("/[[abc]&&[bcd]&&[c]]/v","/[[abc]&&[bcd]&&[c]]/v",#20102) #20103=* regexpterm(#20103,23,#20102,0,"[[abc]&&[bcd]&&[c]]") #20104=@"loc,{#10000},7,2,7,20" locations_default(#20104,#10000,7,2,7,20) hasLocation(#20103,#20104) #20105=* regexpterm(#20105,29,#20103,0,"[[abc]&&[bcd]&&[c]]") hasLocation(#20105,#20104) #20106=* regexpterm(#20106,23,#20105,0,"[abc]") #20107=@"loc,{#10000},7,3,7,7" locations_default(#20107,#10000,7,3,7,7) hasLocation(#20106,#20107) #20108=* regexpterm(#20108,14,#20106,0,"a") #20109=@"loc,{#10000},7,4,7,4" locations_default(#20109,#10000,7,4,7,4) hasLocation(#20108,#20109) regexp_const_value(#20108,"a") #20110=* regexpterm(#20110,14,#20106,1,"b") #20111=@"loc,{#10000},7,5,7,5" locations_default(#20111,#10000,7,5,7,5) hasLocation(#20110,#20111) regexp_const_value(#20110,"b") #20112=* regexpterm(#20112,14,#20106,2,"c") #20113=@"loc,{#10000},7,6,7,6" locations_default(#20113,#10000,7,6,7,6) hasLocation(#20112,#20113) regexp_const_value(#20112,"c") #20114=* regexpterm(#20114,23,#20105,1,"[bcd]") #20115=@"loc,{#10000},7,10,7,14" locations_default(#20115,#10000,7,10,7,14) hasLocation(#20114,#20115) #20116=* regexpterm(#20116,14,#20114,0,"b") #20117=@"loc,{#10000},7,11,7,11" locations_default(#20117,#10000,7,11,7,11) hasLocation(#20116,#20117) regexp_const_value(#20116,"b") #20118=* regexpterm(#20118,14,#20114,1,"c") #20119=@"loc,{#10000},7,12,7,12" locations_default(#20119,#10000,7,12,7,12) hasLocation(#20118,#20119) regexp_const_value(#20118,"c") #20120=* regexpterm(#20120,14,#20114,2,"d") #20121=@"loc,{#10000},7,13,7,13" locations_default(#20121,#10000,7,13,7,13) hasLocation(#20120,#20121) regexp_const_value(#20120,"d") #20122=* regexpterm(#20122,23,#20105,2,"[c]") #20123=@"loc,{#10000},7,17,7,19" locations_default(#20123,#10000,7,17,7,19) hasLocation(#20122,#20123) #20124=* regexpterm(#20124,14,#20122,0,"c") #20125=@"loc,{#10000},7,18,7,18" locations_default(#20125,#10000,7,18,7,18) hasLocation(#20124,#20125) regexp_const_value(#20124,"c") #20126=* entry_cfg_node(#20126,#20001) #20127=@"loc,{#10000},1,1,1,0" locations_default(#20127,#10000,1,1,1,0) hasLocation(#20126,#20127) #20128=* exit_cfg_node(#20128,#20001) hasLocation(#20128,#20047) successor(#20100,#20102) successor(#20102,#20128) successor(#20077,#20079) successor(#20079,#20100) successor(#20072,#20074) successor(#20074,#20077) successor(#20050,#20052) successor(#20052,#20072) successor(#20126,#20050) numlines(#10000,7,4,7) filetype(#10000,"javascript")