渲染zh-Hant

自身

Translation status: 繁體中文 reader-locale proof. Term names and code fences follow the zh-Hant pack; supporting prose may still be English.

Refers to the current instance inside a method.

Aliases: self, this

Syntax: 自身.<member>

Category#

object

Examples#

radix/corpus/ego/ego.fab (canonical · keyword)#

Refers to the current instance inside a method.

# =============================================================================
# ego — Refers to the current instance inside a method.
# =============================================================================
#
# What this teaches:
#   • Self-reference — `ego.<member>` accesses the current instance's fields and methods inside a 類型 method.
#   • Method definition — functions defined inside a 類型 block receive the instance as `ego`.
#
# Common mistakes:
#   • Using `ego` outside a 類型 method — `ego` is only valid inside methods defined on a 類型 (SEM008).
#
# See also: 靜態, 類型
# =============================================================================

# ego — current 類型 instance reference
#
# ego.<field>
#
# GRAMMAR:
#   memberExpr inside 類型 method :← 'ego' '.' ident
#
# EXPECTED OUTPUT:
#   capsa: prima

class Capsa {
    var string titulus

    fn narra() → string {
        # ego = the receiver instance
        return "capsa: " + self.titulus
    }
}

main {
    const Capsa capsa ← Capsa { titulus = "prima" }
    print capsa.narra()
}

Expected output:

capsa: prima