1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40
|
// ==ORIGINAL==
function F<T>(t1: T) {
function G<T>(t2: T) {
/*[#|*/t1.toString();
t2.toString();/*|]*/
}
}
// ==SCOPE::Extract to inner function in function 'G'==
function F<T>(t1: T) {
function G<T>(t2: T) {
/*RENAME*/newFunction();
function newFunction() {
t1.toString();
t2.toString();
}
}
}
// ==SCOPE::Extract to inner function in function 'F'==
function F<T>(t1: T) {
function G<T>(t2: T) {
/*RENAME*/newFunction<T>(t2);
}
function newFunction<T>(t2: T) {
t1.toString();
t2.toString();
}
}
// ==SCOPE::Extract to function in global scope==
function F<T>(t1: T) {
function G<T>(t2: T) {
/*RENAME*/newFunction<T, T>(t1, t2);
}
}
function newFunction<T, T>(t1: T, t2: T) {
t1.toString();
t2.toString();
}
|