Mercurial > repos > tabletprog
annotate samples/reflect.tp @ 268:123e9468d55e
Add support for invoking methods that take no arguments other than self through the relfection API
author | Michael Pavone <pavone@retrodev.com> |
---|---|
date | Fri, 18 Jul 2014 09:55:19 -0700 |
parents | 75dc7161c1ca |
children | b74956a2196f |
rev | line source |
---|---|
266
75dc7161c1ca
Added object module which provides some basic reflection capabilities
Michael Pavone <pavone@retrodev.com>
parents:
diff
changeset
|
1 #{ |
75dc7161c1ca
Added object module which provides some basic reflection capabilities
Michael Pavone <pavone@retrodev.com>
parents:
diff
changeset
|
2 main <- { |
75dc7161c1ca
Added object module which provides some basic reflection capabilities
Michael Pavone <pavone@retrodev.com>
parents:
diff
changeset
|
3 print: (string: (object does: 42 understand?: "+")) . "\n" |
75dc7161c1ca
Added object module which provides some basic reflection capabilities
Michael Pavone <pavone@retrodev.com>
parents:
diff
changeset
|
4 print: (string: (object does: 42 understand?: "foobar")) . "\n" |
75dc7161c1ca
Added object module which provides some basic reflection capabilities
Michael Pavone <pavone@retrodev.com>
parents:
diff
changeset
|
5 foreach: (object understoodBy: 42) :idx el{ |
75dc7161c1ca
Added object module which provides some basic reflection capabilities
Michael Pavone <pavone@retrodev.com>
parents:
diff
changeset
|
6 print: el . "\n" |
75dc7161c1ca
Added object module which provides some basic reflection capabilities
Michael Pavone <pavone@retrodev.com>
parents:
diff
changeset
|
7 } |
268
123e9468d55e
Add support for invoking methods that take no arguments other than self through the relfection API
Michael Pavone <pavone@retrodev.com>
parents:
266
diff
changeset
|
8 print: (object sendMessage: "hex" to: 42) . "\n" |
266
75dc7161c1ca
Added object module which provides some basic reflection capabilities
Michael Pavone <pavone@retrodev.com>
parents:
diff
changeset
|
9 0 |
75dc7161c1ca
Added object module which provides some basic reflection capabilities
Michael Pavone <pavone@retrodev.com>
parents:
diff
changeset
|
10 } |
75dc7161c1ca
Added object module which provides some basic reflection capabilities
Michael Pavone <pavone@retrodev.com>
parents:
diff
changeset
|
11 } |