1.1 --- a/docs/assignment.txt Fri Feb 20 01:24:14 2009 +0100
1.2 +++ b/docs/assignment.txt Sun Feb 22 02:03:17 2009 +0100
1.3 @@ -1,13 +1,44 @@
1.4 +Object contexts:
1.5 +
1.6 + Object Context
1.7 + ------ -------
1.8 + function overridable
1.9 + method defining/originating class
1.10 + class null
1.11 + instance self
1.12 + module null
1.13 +
1.14 Assignment types:
1.15
1.16 Assignment of stored value to... Effect on context
1.17 -------------------------------- -----------------
1.18 local preserved
1.19 global (module) preserved
1.20 - class preserved
1.21 + class overridden (if overridable)
1.22 instance preserved
1.23
1.24 - Assignment to a namespace preserves the context
1.25 + Assignment to a namespace preserves the context except for some class
1.26 + assignments
1.27 +
1.28 +Assigning to classes:
1.29 +
1.30 + Assignment of... Effect on context
1.31 + ---------------- -----------------
1.32 + function (overridable context) overridden by class (becomes method)
1.33 + method (existing context) preserved
1.34 + class (null context) preserved
1.35 + instance (self context) preserved
1.36 + module (null context) preserved
1.37 +
1.38 +With run-time restrictions on assignment targets:
1.39 +
1.40 + Assignment of stored value to... Effect on context Optimised instruction Unoptimised instruction
1.41 + -------------------------------- ----------------- --------------------- -----------------------
1.42 + local preserved StoreName
1.43 + global (module) preserved StoreAddress StoreAttrIndex
1.44 + instance preserved StoreAttr StoreAttrIndex
1.45 +
1.46 + Class assignments are not permitted
1.47
1.48 Access types:
1.49