{"ScriptPreparationCode":"class Signal {\r\n constructor(state) {\r\n this.value = state;\r\n }\r\n\r\n get() {\r\n return this.value; \r\n }\r\n set(newValue) {\r\n if (newValue !== this.value) {\r\n this.value = newValue;\r\n }\r\n }\r\n}\r\n\r\nfunction createSignal(value) {\r\n const v = new Signal(value);\r\n return [v.get.bind(v), v.set.bind(v)];\r\n}\r\nvar [sigData, setData] = createSignal({\r\n value: \u0027data\u0027\r\n});\r\n\r\n\r\nvar mObject = {_value:\u0027data\u0027};\r\nObject.defineProperty(mObject, \u0027value\u0027, {\r\n set: function (nv) {\r\n this._value = nv;\r\n },\r\n get: function() {\r\n return this._value;\r\n }\r\n});\r\n\r\n \r\nvar proxy = new Proxy({\r\n value: \u0027data\u0027\r\n}, {})\r\n","TestCases":[{"Name":"Proxy access","Code":"proxy.value","IsDeferred":false},{"Name":"Signal access","Code":"sigData().value","IsDeferred":false},{"Name":"object define properties","Code":"mObject.value","IsDeferred":false}]}