35 lines
		
	
	
		
			993 B
		
	
	
	
		
			JavaScript
		
	
	
	
	
	
		
		
			
		
	
	
			35 lines
		
	
	
		
			993 B
		
	
	
	
		
			JavaScript
		
	
	
	
	
	
|  | "use strict"; | ||
|  | Object.defineProperty(exports, "__esModule", { value: true }); | ||
|  | var json_1 = require("./json"); | ||
|  | var JsonableValue = (function () { | ||
|  |     function JsonableValue(value) { | ||
|  |         this.value = value; | ||
|  |     } | ||
|  |     Object.defineProperty(JsonableValue.prototype, "value", { | ||
|  |         get: function () { | ||
|  |             return this._value; | ||
|  |         }, | ||
|  |         set: function (value) { | ||
|  |             this._value = value; | ||
|  |             this._serialized = json_1.stringify(value); | ||
|  |         }, | ||
|  |         enumerable: true, | ||
|  |         configurable: true | ||
|  |     }); | ||
|  |     Object.defineProperty(JsonableValue.prototype, "serialized", { | ||
|  |         get: function () { | ||
|  |             return this._serialized; | ||
|  |         }, | ||
|  |         enumerable: true, | ||
|  |         configurable: true | ||
|  |     }); | ||
|  |     JsonableValue.prototype.valueOf = function () { | ||
|  |         return this._value; | ||
|  |     }; | ||
|  |     JsonableValue.prototype.toString = function () { | ||
|  |         return this._serialized; | ||
|  |     }; | ||
|  |     return JsonableValue; | ||
|  | }()); | ||
|  | exports.JsonableValue = JsonableValue; |