{"ScriptPreparationCode":null,"TestCases":[{"Name":"Arrows in classes","Code":"class A {\r\n hi = () =\u003E {\r\n return \u0027Hi\u0027 \u002B \u0027!\u0027;\r\n }\r\n \r\n bye = () =\u003E {\r\n return \u0027Bye\u0027 \u002B \u0027!\u0027;\r\n }\r\n \r\n message = () =\u003E {\r\n return this.hi() \u002B this.bye();\r\n }\r\n}\r\n\r\nconst a = new A();\r\nconst message = a.message;\r\nmessage();","IsDeferred":false},{"Name":"Bind in classes","Code":"class A {\r\n constructor() {\r\n this.message = this.message.bind(this);\r\n }\r\n \r\n hi() {\r\n return \u0027Hi\u0027 \u002B \u0027!\u0027;\r\n }\r\n \r\n bye() {\r\n return \u0027Bye\u0027 \u002B \u0027!\u0027;\r\n }\r\n \r\n message() {\r\n return this.hi() \u002B this.bye();\r\n }\r\n}\r\n\r\nconst a = new A();\r\nconst message = a.message;\r\nmessage();","IsDeferred":false},{"Name":"Bind in classes prototype","Code":"class A {\r\n constructor() {\r\n this.message = A.prototype.message.bind(this);\r\n }\r\n \r\n hi() {\r\n return \u0027Hi\u0027 \u002B \u0027!\u0027;\r\n }\r\n \r\n bye() {\r\n return \u0027Bye\u0027 \u002B \u0027!\u0027;\r\n }\r\n \r\n message() {\r\n return this.hi() \u002B this.bye();\r\n }\r\n}\r\n\r\nconst a = new A();\r\nconst message = a.message;\r\nmessage();","IsDeferred":false},{"Name":"Mixed in classes","Code":"class A {\r\n hi() {\r\n return \u0027Hi\u0027 \u002B \u0027!\u0027;\r\n }\r\n \r\n bye() {\r\n return \u0027Bye\u0027 \u002B \u0027!\u0027;\r\n }\r\n \r\n message = () =\u003E {\r\n return this.hi() \u002B this.bye();\r\n }\r\n}\r\n\r\nconst a = new A();\r\nconst message = a.message;\r\nmessage();","IsDeferred":false}]}