Mercurial > hg > octave-lyh
view examples/@polynomial/subsref.m @ 17422:20d1b911b4e7 classdef
* libinterp/corefcn/load-path.cc (genpath): Ignore package dirs.
author | Michael Goffioul <michael.goffioul@gmail.com> |
---|---|
date | Thu, 12 Sep 2013 21:08:07 -0400 |
parents | bf6da2fbfa4e |
children |
line wrap: on
line source
function b = subsref (a, s) if (isempty (s)) error ("polynomial: missing index"); endif switch (s(1).type) case "()" ind = s(1).subs; if (numel (ind) != 1) error ("polynomial: need exactly one index"); else b = polyval (fliplr (a.poly), ind{1}); endif case "{}" ind = s(1).subs; if (numel (ind) != 1) error ("polynomial: need exactly one index"); else if (isnumeric (ind{1})) b = a.poly(ind{1}+1); else b = a.poly(ind{1}); endif endif case "." fld = s.subs; if (strcmp (fld, "poly")) b = a.poly; else error ("@polynomial/subsref: invalid property \"%s\"", fld); endif otherwise error ("invalid subscript type"); endswitch if (numel (s) > 1) b = subsref (b, s(2:end)); endif endfunction