Index: tests/submethods.test =================================================================== diff -u -r53e092b1dceccab3bbd0045bd5b14c1ddedaf68d -r3ab1e160c5e9832a4d69c6f999a63d9706c4c956 --- tests/submethods.test (.../submethods.test) (revision 53e092b1dceccab3bbd0045bd5b14c1ddedaf68d) +++ tests/submethods.test (.../submethods.test) (revision 3ab1e160c5e9832a4d69c6f999a63d9706c4c956) @@ -338,5 +338,48 @@ ? {obj foo} ::nx::Object } +nx::Test case submethods-as-filters { + # + # submethods as filters? + # + #set h [C public method "BAR bar" args { + # next + #}] + #C filter {{BAR bar}} +} +nx::Test case submethods-current-introspection { + # + # [current] & [current class] + # + Object create o + o public method "FOO foo" {} { + return "-[current]-[current class]-" + } + ? {o FOO foo} -::o-- + + Class create C + C public method "FOO foo" {} { + return "-[current]-[current class]-" + } + C create c + ? {c FOO foo} -::c-::C- + C mixin [Class create M1 { + :public method "FOO foo" {} { + return "-[current]-[current class][next]" + } + }] + + ? {c FOO foo} -::c-::M1-::c-::C- + + o mixin ::M1 + ? {o FOO foo} -::o-::M1-::o-- + + # + # TODO: [current callingmethod], [current calledmethod] + # +} + + +