2017-08-05 01:10:33 +02:00
|
|
|
/// <reference path='fourslash.ts' />
|
|
|
|
|
|
|
|
//// namespace NS {
|
|
|
|
//// class Q {
|
|
|
|
//// foo() {
|
|
|
|
//// console.log('100');
|
|
|
|
//// const m = 10, j = "hello", k = {x: "what"};
|
|
|
|
//// const q = /*start*/m + j + k/*end*/;
|
|
|
|
//// }
|
|
|
|
//// }
|
|
|
|
//// }
|
|
|
|
goTo.select('start', 'end')
|
2017-08-25 18:53:28 +02:00
|
|
|
edit.applyRefactor({
|
2017-09-15 01:04:44 +02:00
|
|
|
refactorName: "Extract Symbol",
|
|
|
|
actionName: "function_scope_3",
|
2017-09-09 14:52:52 +02:00
|
|
|
actionDescription: "Extract to function in global scope",
|
2017-09-13 18:02:10 +02:00
|
|
|
newContent:
|
2017-08-05 01:10:33 +02:00
|
|
|
`namespace NS {
|
|
|
|
class Q {
|
|
|
|
foo() {
|
|
|
|
console.log('100');
|
|
|
|
const m = 10, j = "hello", k = {x: "what"};
|
2017-09-13 18:02:10 +02:00
|
|
|
const q = /*RENAME*/newFunction(m, j, k);
|
2017-08-05 01:10:33 +02:00
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
2017-10-12 20:37:31 +02:00
|
|
|
|
2017-08-05 01:10:33 +02:00
|
|
|
function newFunction(m: number, j: string, k: { x: string; }) {
|
|
|
|
return m + j + k;
|
|
|
|
}
|
2017-09-13 18:02:10 +02:00
|
|
|
`
|
|
|
|
});
|