Handel getRefrences for labels

This commit is contained in:
Mohamed Hegazy
2014-08-13 13:01:32 -07:00
parent 69c653d5e8
commit bfd13347d4
5 changed files with 92 additions and 5 deletions

View File

@@ -0,0 +1,23 @@
/// <reference path='fourslash.ts'/>
// Valid References for a label
/////*1*/label: while (true) {
//// if (false) break /*2*/label;
//// if (true) continue /*3*/label;
////}
////
/////*4*/label: while (false) { }
////var label = "label";
goTo.marker("1");
verify.referencesCountIs(3);
goTo.marker("2");
verify.referencesCountIs(3);
goTo.marker("3");
verify.referencesCountIs(3);
goTo.marker("4");
verify.referencesCountIs(1);

View File

@@ -0,0 +1,12 @@
/// <reference path='fourslash.ts'/>
// References to undefined label
////var label = "label";
////while (true) {
//// if (false) break /*1*/label;
//// if (true) continue label;
////}
goTo.marker("1");
verify.referencesCountIs(2);

View File

@@ -0,0 +1,10 @@
/// <reference path='fourslash.ts'/>
// References to unused label
/////*1*/label: while (true) {
//// var label = "label";
////}
goTo.marker("1");
verify.referencesCountIs(1);

View File

@@ -0,0 +1,15 @@
/// <reference path='fourslash.ts'/>
// References to a label outside function bounderies
/////*1*/label: function foo(label) {
//// while (true) {
//// break /*2*/label;
//// }
////}
goTo.marker("1");
verify.referencesCountIs(2);
goTo.marker("2");
verify.referencesCountIs(2);