99import pydoc
1010import io
1111import time
12- import copy as _copy
1312import moose
1413import moose ._cmoose as _cmoose
1514
@@ -58,6 +57,8 @@ def about():
5857
5958def connect (src , srcfield , dest , destfield , msgtype = "Single" ):
6059 # FIXME: Move to pymoose.cpp
60+ if isinstance (dest , str ):
61+ dest = _cmoose .objid (dest )
6162 return src .connect (srcfield , dest , destfield , msgtype )
6263
6364def element (path ):
@@ -172,7 +173,7 @@ def showfield(el, field='*', showtype=False):
172173 if isinstance (el , str ):
173174 if not _cmoose .exists (el ):
174175 raise ValueError ('no such element: %s' % el )
175- el = _cmoose . element (el )
176+ el = element (el )
176177 result = []
177178 if field == '*' :
178179 value_field_dict = _cmoose .getFieldDict (el .className , 'valueFinfo' )
@@ -236,7 +237,7 @@ def listmsg(el):
236237 connections of `el`.
237238
238239 """
239- obj = _cmoose . element (el )
240+ obj = element (el )
240241 ret = []
241242 for msg in obj .msgIn :
242243 ret .append (msg )
@@ -258,7 +259,7 @@ def showmsg(el):
258259 None
259260
260261 """
261- obj = _cmoose . element (el )
262+ obj = element (el )
262263 print ('INCOMING:' )
263264 for msg in obj .msgIn :
264265 print (msg .e2 .path , msg .destFieldsOnE2 , '<---' , msg .e1 .path ,
@@ -326,13 +327,13 @@ def getFieldDoc(tokens, indent=''):
326327def _appendFinfoDocs (classname , docstring , indent ):
327328 """Append list of finfos in class name to docstring"""
328329 try :
329- classElem = _cmoose . element ('/classes/%s' % (classname ))
330+ classElem = element ('/classes/%s' % (classname ))
330331 except ValueError :
331332 raise NameError ('class \' %s\' not defined.' % (classname ))
332333 for ftype , rname in finfotypes :
333334 docstring .write (u'\n *%s*\n ' % (rname .capitalize ()))
334335 try :
335- finfo = _cmoose . element ('%s/%s' % (classElem .path , ftype ))
336+ finfo = element ('%s/%s' % (classElem .path , ftype ))
336337 for field in finfo .vec :
337338 docstring .write (u'%s%s: %s\n ' %
338339 (indent , field .fieldName , field .type ))
@@ -350,7 +351,7 @@ def _getMooseDoc(tokens, inherited=False):
350351 if not tokens :
351352 return ""
352353 try :
353- classElem = _cmoose . element ('/classes/%s' % (tokens [0 ]))
354+ classElem = element ('/classes/%s' % (tokens [0 ]))
354355 except ValueError :
355356 raise NameError ("Name '%s' not defined." % (tokens [0 ]))
356357
0 commit comments