From bc990a0917b401e16a0ab57affd868d5ef51cdec Mon Sep 17 00:00:00 2001 From: _ov4 Date: Sat, 17 Oct 2026 06:05:39 +0000 Subject: docs(classes): describe member methods and this semantics Co-Authored-By: Claude Fable 5.1 --- doc/language/keyword/cpsc-keyword-function.7.md | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) (limited to 'doc/language/keyword/cpsc-keyword-function.7.md') diff --git a/doc/language/keyword/cpsc-keyword-function.7.md b/doc/language/keyword/cpsc-keyword-function.7.md index 52efa90..c20bb50 100644 --- a/doc/language/keyword/cpsc-keyword-function.7.md +++ b/doc/language/keyword/cpsc-keyword-function.7.md @@ -21,6 +21,8 @@ As a compiler extension, `name(arguments)` may also be a complete statement that Parameters use `name : type`, optionally prefixed by BYVAL. BYVAL is the default; BYREF is forbidden for functions (guide section 8.3). Array parameters accept `ARRAY OF type` (one dimension) or `ARRAY[lower:upper, ...] OF type` (integer literal bounds). BYVAL arrays are copied. RETURNS, RETURN, BYVAL, and ENDFUNCTION belong here. +A FUNCTION inside CLASS defines a member function, called as `Object.Method(arguments)`. It follows the same parameter and return rules. Within a method, use `this.Method(arguments)` to call another method on the current object; see [cpsc-keyword-class(7)](cpsc-keyword-class.7.md). + # EXAMPLE ```text @@ -32,4 +34,4 @@ OUTPUT Double(4) # SEE ALSO -[cpsc-language-overview(7)](../cpsc-language-overview.7.md), [cpsc-keyword-procedure(7)](cpsc-keyword-procedure.7.md), [cpsc-keyword-call(7)](cpsc-keyword-call.7.md). +[cpsc-language-overview(7)](../cpsc-language-overview.7.md), [cpsc-keyword-class(7)](cpsc-keyword-class.7.md), [cpsc-keyword-procedure(7)](cpsc-keyword-procedure.7.md), [cpsc-keyword-call(7)](cpsc-keyword-call.7.md). -- cgit v1.3.1-4-g156e