Changeset f3517a2 in git for modules


Ignore:
Timestamp:
Sep 24, 2005, 4:26:14 PM (19 years ago)
Author:
Michael Brickenstein <bricken@…>
Branches:
(u'spielwiese', '5b153614cbc72bfa198d75b1e9e33dab2645d9fe')
Children:
22ed4cf89aab148fdc7f4bd4b032c31b19d38331
Parents:
ab8c32a4fe42867e782301943eaf5f0c16f6d6e8
Message:
*bricken: better hidden internals


git-svn-id: file:///usr/local/Singular/svn/trunk@8661 2c84dea3-7e68-4137-9b89-c4e89433aadc
Location:
modules/python
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • modules/python/interpreter.py

    rab8c32 rf3517a2  
    11from Singular import *
    2 from _Singular import *
     2#from _Singular import *
     3import _Singular
    34try:
    45    import psyco
     
    1314#def build_arg_list(*args)
    1415def list2arg_list(args):
    15     l=i_arg_list()
     16    l=_Singular.i_arg_list()
    1617    for a in args:
    1718        if isinstance(a,list):
     
    2526    return l
    2627class singular_globals_proxy(object):
     28    def __mycbm(self,name,*args):
     29      l=list2arg_list(args)
     30      prepare_ring(args)
     31      res= _Singular.cbm(name,l)
     32      finish_ring()
     33      return res
     34
    2735    def __getattr__(self,name):
    28         proc=get_idhdl(name)
     36        proc=_Singular.get_idhdl(name)
    2937        if proc.is_zero():
    30             if is_builtin(name):
     38            if _Singular.is_builtin(name):
    3139                def fun_wrapper(*args):
    32                     return mycbm(name,*args)
     40                    return self.__mycbm(name,*args)
    3341                try:
    3442                    fun_wrapper.__name__=name
     
    4250               
    4351               
    44                 proc=get_idhdl(name)
     52                proc=_Singular.get_idhdl(name)
    4553                if not proc.is_proc():
    4654                    proc.print_type()
     
    4856                prepare_ring(args)
    4957                l=list2arg_list(args)
    50                 erg= call_interpreter_method(proc, l)
     58                erg= _Singular.call_interpreter_method(proc, l)
    5159                finish_ring()
    5260                return erg
     
    5765            return fun_wrapper
    5866        else:
    59             res=transfer_to_python(proc)
     67            res=_Singular.transfer_to_python(proc)
    6068            if res is None:
    6169                raise AttributeError("Global variable "+name+" has unknown type")
    6270            return res
    6371    def __setattr__(self,name,value):
    64         id=get_idhdl(name)
     72        id=_Singular.get_idhdl(name)
    6573        if id.is_zero():
    6674            raise Expception
     
    7280global_functions=singular_globals_proxy
    7381
    74 def mycbm(name,*args):
    75     l=list2arg_list(args)
    76     prepare_ring(args)
    77     res= cbm(name,l)
    78     finish_ring()
    79     return res
    8082
    8183def find_rings(arglist):
  • modules/python/interpretertester

    rab8c32 rf3517a2  
    5656list mylist=1,2,3;
    5757LIB("python_module.so");
    58 Python_module::python("from Singular import number,  polynomial, interpreter_id, get_idhdl,call_interpreter_method, i_arg_list, gen, ideal
    59 print call_interpreter_method
     58Python_module::python("from Singular import number,  polynomial, gen, ideal
     59
    6060from interpreter import global_functions
    6161functions=global_functions()
Note: See TracChangeset for help on using the changeset viewer.