view @pyobj/dummy.m @ 204:61df785bd8b0

pyeval creates pyobj direction pyeval uses an feval call to create a pyobj. Thanks to Mike Miller. * pyeval.cc: create pyobj
author Colin Macdonald <cbm@m.fsf.org>
date Fri, 20 May 2016 22:12:32 -0700
parents 7d03df51d6e8
children 98cde0dcf09f
line wrap: on
line source

%% Copyright (C) 2016 Colin B. Macdonald
%%
%% This file is part of PyTave.
%%
%% OctSymPy is free software; you can redistribute it and/or modify
%% it under the terms of the GNU General Public License as published
%% by the Free Software Foundation; either version 3 of the License,
%% or (at your option) any later version.
%%
%% This software is distributed in the hope that it will be useful,
%% but WITHOUT ANY WARRANTY; without even the implied warranty
%% of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See
%% the GNU General Public License for more details.
%%
%% You should have received a copy of the GNU General Public
%% License along with this software; see the file COPYING.
%% If not, see <http://www.gnu.org/licenses/>.

%% -*- texinfo -*-
%% @documentencoding UTF-8
%% @defmethod @@pyobj dummy (@var{x})
%% Does nothing, stores doctests for now.
%%
%%
%% You can delete an object in Python and it will persist:
%% @example
%% @group
%% pyexec('d = dict(one=1, two=2)')
%% x = pyobj.fromPythonVarName('d')
%%   @result{} x =
%%       [PyObject id ...]
%%       @{'two': 2, 'one': 1@}
%%
%% % oops, overwrote d in Python:
%% pyexec('d = 42')
%%
%% % but have no fear, we still have a reference to it:
%% x
%%   @result{} x =
%%       [PyObject id ...]
%%       @{'two': 2, 'one': 1@}
%% @end group
%% @end example
%%
%% We can accesss ``callables'' (methods) of objects:
%% @example
%% @group
%% % x.keys()   % FIXME: should be this but its broken
%% ddotkeys = x.keys;
%% ddotkeys()
%%   @result{} ans =
%%       @{
%%         [1,1] = two
%%         [1,2] = one
%%       @}
%% @end group
%% @end example
%%
%% @code{pyeval} returns a @@pyobj for things it cannot convert to
%% Octave-native objects:
%% @example
%% @group
%% pyexec('import sys')
%% sysmodule = pyeval('sys')
%%   @result{} sysmodule =
%%       [PyObject id ...]
%%       <module 'sys' (built-in)>
%% @end group
%% @end example
%%
%% After you have the object, you can access its properties:
%% @example
%% @group
%% sysmodule.version
%%   @result{} ans = ...
%% @end group
%% @end example
%%
%%
%% @seealso{pyobj}
%% @end defmethod

function dummy (x)

end