view examples/code/@polynomial/get.m @ 21072:a9ed4104ecfd

doc: Rewrite documentation for Object Oriented Programming. * octave.texi: Rename "Manipulating Classes" node to "Class Methods" * oop.txi: Rewrite signicant parts of Object Oriented Programming chapter. * examples/code/@FIRfilter/subsasgn.m, examples/code/@FIRfilter/subsref.m, examples/code/@polynomial/get.m, examples/code/@polynomial/subsasgn.m: Enclose property in error messages in double quotes ("%s"). * examples/code/@polynomial/subsref.m: Rename input object to 'p'. Rename variable "ind" to "idx". Enclose property in error messages in double quotes ("%s"). * ov-class.cc (Fsuperiorto, Finferiorto): Improve docstrings. * ov-usr-fcn.cc (Foptimize_subsasgn_calls): Improve docstring. * ov.cc (Fsubsref, Fsubsasgn): Improve docstrings. * display.m: Rewrite docstring. Rename input variable to "obj". Remove unused output variable from function declaration. * subsindex.m: Rename input variable to "obj". Rewrite examples in docstring. Add input validation and BIST tests to m-file.
author Rik <rik@octave.org>
date Thu, 14 Jan 2016 13:30:22 -0800
parents fd97ed44f2da
children 28de41192f3c
line wrap: on
line source

function val = get (p, prop)

  if (nargin < 1 || nargin > 2)
    print_usage ();
  endif

  if (nargin == 1)
    val.poly = p.poly;
  else
    if (! ischar (prop))
      error ("@polynomial/get: PROPERTY must be a string");
    endif

    switch (prop)
      case "poly"
        val = p.poly;
      otherwise
        error ('@polynomial/get: invalid PROPERTY "%s"', prop);
    endswitch
  endif

endfunction