From 29db60797bd74656b57a0f20778c76adc78095ac Mon Sep 17 00:00:00 2001 From: Li Jin Date: Sat, 28 Feb 2026 18:03:14 +0800 Subject: Fixed destructuring with empty and comment lines in table issue. Updated docs. --- .../de/doc/objects/object-oriented-programming.md | 22 ++++++++++++++++++++++ .../doc/objects/object-oriented-programming.md | 22 ++++++++++++++++++++++ .../doc/objects/object-oriented-programming.md | 22 ++++++++++++++++++++++ .../doc/objects/object-oriented-programming.md | 22 ++++++++++++++++++++++ .../zh/doc/objects/object-oriented-programming.md | 22 ++++++++++++++++++++++ 5 files changed, 110 insertions(+) (limited to 'doc/docs') diff --git a/doc/docs/de/doc/objects/object-oriented-programming.md b/doc/docs/de/doc/objects/object-oriented-programming.md index 706cfda..705fc08 100644 --- a/doc/docs/de/doc/objects/object-oriented-programming.md +++ b/doc/docs/de/doc/objects/object-oriented-programming.md @@ -40,6 +40,28 @@ Beachte, dass alle Methoden in der Klasse die Fat-Arrow-Syntax verwenden. Beim A Das `@`-Präfix ist Kurzform für `self.`. `@items` wird zu `self.items`. +Der Klassenblock unterstützt auch Metatable-Felder, indem Metamethod-Schlüssel in spitzen Klammern geschrieben werden, zum Beispiel ``. + +```yuescript +class User + new: (@name) => + : => "User(#{@name})" + +print tostring User "Yue" +``` + + + +```yue +class User + new: (@name) => + : => "User(#{@name})" + +print tostring User "Yue" +``` + + + Eine Instanz der Klasse wird erstellt, indem man den Klassennamen wie eine Funktion aufruft. ```yuescript diff --git a/doc/docs/doc/objects/object-oriented-programming.md b/doc/docs/doc/objects/object-oriented-programming.md index 781ab65..b3325fa 100644 --- a/doc/docs/doc/objects/object-oriented-programming.md +++ b/doc/docs/doc/objects/object-oriented-programming.md @@ -40,6 +40,28 @@ Notice how all the methods in the class use the fat arrow function syntax. When The @ prefix on a variable name is shorthand for self.. @items becomes self.items. +The class block also supports metatable fields by writing metamethod keys in angle brackets, such as ``. + +```yuescript +class User + new: (@name) => + : => "User(#{@name})" + +print tostring User "Yue" +``` + + + +```yue +class User + new: (@name) => + : => "User(#{@name})" + +print tostring User "Yue" +``` + + + Creating an instance of the class is done by calling the name of the class as a function. ```yuescript diff --git a/doc/docs/id-id/doc/objects/object-oriented-programming.md b/doc/docs/id-id/doc/objects/object-oriented-programming.md index 7d5d420..cc74690 100644 --- a/doc/docs/id-id/doc/objects/object-oriented-programming.md +++ b/doc/docs/id-id/doc/objects/object-oriented-programming.md @@ -40,6 +40,28 @@ Perhatikan bahwa semua method di kelas menggunakan sintaks fungsi panah tebal. S Prefiks `@` pada nama variabel adalah singkatan untuk `self.`. `@items` menjadi `self.items`. +Blok kelas juga mendukung field metatable dengan menulis key metamethod dalam tanda kurung sudut, misalnya ``. + +```yuescript +class User + new: (@name) => + : => "User(#{@name})" + +print tostring User "Yue" +``` + + + +```yue +class User + new: (@name) => + : => "User(#{@name})" + +print tostring User "Yue" +``` + + + Membuat instance kelas dilakukan dengan memanggil nama kelas sebagai fungsi. ```yuescript diff --git a/doc/docs/pt-br/doc/objects/object-oriented-programming.md b/doc/docs/pt-br/doc/objects/object-oriented-programming.md index 54a559a..01aeff3 100644 --- a/doc/docs/pt-br/doc/objects/object-oriented-programming.md +++ b/doc/docs/pt-br/doc/objects/object-oriented-programming.md @@ -40,6 +40,28 @@ Observe como todos os métodos da classe usam a sintaxe de função seta fat. Ao O prefixo @ em um nome de variável é abreviação para self.. @items torna-se self.items. +O bloco da classe também suporta campos de metatable escrevendo chaves de metamétodo entre `<>`, como ``. + +```yuescript +class User + new: (@name) => + : => "User(#{@name})" + +print tostring User "Yue" +``` + + + +```yue +class User + new: (@name) => + : => "User(#{@name})" + +print tostring User "Yue" +``` + + + Criar uma instância da classe é feito chamando o nome da classe como uma função. ```yuescript diff --git a/doc/docs/zh/doc/objects/object-oriented-programming.md b/doc/docs/zh/doc/objects/object-oriented-programming.md index 04f816a..270c2b3 100644 --- a/doc/docs/zh/doc/objects/object-oriented-programming.md +++ b/doc/docs/zh/doc/objects/object-oriented-programming.md @@ -38,6 +38,28 @@ class Inventory   此外,“@” 前缀在变量名上起到了简化作用,代表 “self”。例如,`@items` 就等同于 `self.items`。 +  类定义块中也支持通过尖括号写元方法字段,例如 ``。 + +```yuescript +class User + new: (@name) => + : => "User(#{@name})" + +print tostring User "Yue" +``` + + + +```yue +class User + new: (@name) => + : => "User(#{@name})" + +print tostring User "Yue" +``` + + +   为了创建类的一个新实例,可以将类名当作一个函数来调用,这样就可以生成并返回一个新的实例。 ```yuescript -- cgit v1.2.3-55-g6feb