2014-07-13 01:04:16 +02:00
|
|
|
//// [recursivelySpecializedConstructorDeclaration.ts]
|
|
|
|
module MsPortal.Controls.Base.ItemList {
|
|
|
|
|
|
|
|
export interface Interface<TValue> {
|
|
|
|
// Removing this line fixes the constructor of ItemValue
|
|
|
|
options: ViewModel<TValue>;
|
|
|
|
}
|
|
|
|
|
|
|
|
export class ItemValue<T> {
|
|
|
|
constructor(value: T) {
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
export class ViewModel<TValue> extends ItemValue<TValue> {
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
// Generates:
|
|
|
|
/*
|
|
|
|
declare module MsPortal.Controls.Base.ItemList {
|
|
|
|
interface Interface<TValue> {
|
|
|
|
options: ViewModel<TValue>;
|
|
|
|
}
|
|
|
|
class ItemValue<T> {
|
|
|
|
constructor(value: T);
|
|
|
|
}
|
|
|
|
class ViewModel<TValue> extends ItemValue<TValue> {
|
|
|
|
}
|
|
|
|
}
|
|
|
|
*/
|
|
|
|
|
|
|
|
//// [recursivelySpecializedConstructorDeclaration.js]
|
|
|
|
var __extends = this.__extends || function (d, b) {
|
|
|
|
for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p];
|
|
|
|
function __() { this.constructor = d; }
|
|
|
|
__.prototype = b.prototype;
|
|
|
|
d.prototype = new __();
|
|
|
|
};
|
|
|
|
var MsPortal;
|
|
|
|
(function (MsPortal) {
|
2014-09-07 02:40:19 +02:00
|
|
|
var Controls;
|
2014-07-13 01:04:16 +02:00
|
|
|
(function (Controls) {
|
2014-09-07 02:40:19 +02:00
|
|
|
var Base;
|
2014-07-13 01:04:16 +02:00
|
|
|
(function (Base) {
|
2014-09-07 02:40:19 +02:00
|
|
|
var ItemList;
|
2014-07-13 01:04:16 +02:00
|
|
|
(function (ItemList) {
|
|
|
|
var ItemValue = (function () {
|
|
|
|
function ItemValue(value) {
|
|
|
|
}
|
|
|
|
return ItemValue;
|
|
|
|
})();
|
|
|
|
ItemList.ItemValue = ItemValue;
|
|
|
|
var ViewModel = (function (_super) {
|
|
|
|
__extends(ViewModel, _super);
|
|
|
|
function ViewModel() {
|
|
|
|
_super.apply(this, arguments);
|
|
|
|
}
|
|
|
|
return ViewModel;
|
|
|
|
})(ItemValue);
|
|
|
|
ItemList.ViewModel = ViewModel;
|
2014-09-07 02:40:19 +02:00
|
|
|
})(ItemList = Base.ItemList || (Base.ItemList = {}));
|
|
|
|
})(Base = Controls.Base || (Controls.Base = {}));
|
|
|
|
})(Controls = MsPortal.Controls || (MsPortal.Controls = {}));
|
2014-07-13 01:04:16 +02:00
|
|
|
})(MsPortal || (MsPortal = {}));
|
2014-12-03 01:09:41 +01:00
|
|
|
// Generates:
|
|
|
|
/*
|
|
|
|
declare module MsPortal.Controls.Base.ItemList {
|
|
|
|
interface Interface<TValue> {
|
|
|
|
options: ViewModel<TValue>;
|
|
|
|
}
|
|
|
|
class ItemValue<T> {
|
|
|
|
constructor(value: T);
|
|
|
|
}
|
|
|
|
class ViewModel<TValue> extends ItemValue<TValue> {
|
|
|
|
}
|
|
|
|
}
|
2015-01-20 21:24:13 +01:00
|
|
|
*/
|