Mercurial > pytave
comparison @pyobj/pyobj.m @ 203:7d03df51d6e8
support simple callables
* @pyobj.m: improve subsref method
* @pyobj/dummy.m: doctests
author | Colin Macdonald <cbm@m.fsf.org> |
---|---|
date | Fri, 20 May 2016 10:21:04 -0700 |
parents | 3fa99babc7b5 |
children | 98cde0dcf09f |
comparison
equal
deleted
inserted
replaced
202:3fa99babc7b5 | 203:7d03df51d6e8 |
---|---|
133 end | 133 end |
134 | 134 |
135 function r = subsref(x, idx) | 135 function r = subsref(x, idx) |
136 switch idx.type | 136 switch idx.type |
137 case '()' | 137 case '()' |
138 error('not implemented: () indexing') | 138 if ( ~strcmp (idx.subs, '')) |
139 idx | |
140 error('not implemented: function calls with arguments') | |
141 end | |
142 r = pyeval (sprintf ('__InOct__["%s"]()', x.id)); | |
139 case '.' | 143 case '.' |
140 assert(ischar(idx.subs)) | 144 assert(ischar(idx.subs)) |
141 r = pyeval (sprintf ('__InOct__["%s"].%s', x.id, idx.subs)); | 145 r = pyeval (sprintf ('__InOct__["%s"].%s', x.id, idx.subs)); |
142 otherwise | 146 otherwise |
143 idx | 147 idx |