> From: Tim Staley
>To: dkuhl...@rexx.com 
>Sent: Monday, January 23, 2012 11:47 AM
>Subject: "generateDS" feature requests
> Hi Dave, 
>  (and Roy since I'm interested in VOEventLib,)
> 
>  I've been getting to know your code a bit - works very nicely!
>  However, I was wondering if I could suggest some alterations /
>  extra features?

Super.  Hope generateDS.py has been helpful to you.

> 
>  A couple are fairly trivial (I've hacked them in myself), one maybe
>  not so (couldn't manage it!).
> 
>  Firstly, I was wondering if you could add a command line switch to
>  turn off the getter and setter methods generation entirely? I.e. so
>  that all data access is required to be of the form
> 
>  foo.bar=foo.bar+3
> 
>  rather than 
> 
>  foo.set_bar(foo.get_bar()+3)

OK.  I admit that the properties support should be reworked so that
the name of the property is the same as the name of the
child/attribute.  But, I am worried a bit about changing it and by
doing so, breaking existing code out there.  So, yes, I think we
should do this, but I've got to think about it some.

> 
>  I realise that currently both methods are valid, but I prefer to
>  switch off the second variant (not my style!)
> 
>  Secondly, I'd like to suggest that the base classes
>  "GDSParseError", "GeneratedSuper" have their names prefixed with an
>  underscore - This is the python naming convention for classes or
>  data that are generally considered "private" (i.e. suggested not
>  for public consumption, although there's no enforcing it).

Yes, you are right.  We should be trying to avoid name conflicts
with classes generated from xs:complexType and xs:simpleType.
Again, I worry about causing problems for existing code out there,
though I doubt that's likely.

> 
>  Finally, any chance of shoehorning in a way to customise the member
>  data name bindings?
> 
>  Currently, a class instance typically has the same name as the
>  class type, so for example we get
> 
>  v.WhereWhen=WhereWhen()
> 
>  I'd prefer the python style of lower_with_underscore for member
>  names (which makes it very easy to distinguish instances from the
>  class), e.g.
> 
>  v.where_when=WhereWhen()
> 
>  I realise this has a con, in that the member data naming no longer
>  directly reflects the XML layout, but it's preferable to me (and
>  maybe some others too?).
> 
>  The conversion is easily accomplished using something like:
> 
>  def map_member_name(caps_name):
>      newname_list=[]
>      for i in range(len(caps_name)):
>          if(i!=0):
>              if caps_name[i].isupper() and not caps_name[i-1].isupper():
>                  newname_list.append("_")
>          newname_list.append(temp[i]) 
> 
>      return "".join(newname_list).lower()
> 
>  This "python style member names" could either be turned on as a
>  switch, or simply implemented as a do nothing function for the end
>  user to re-implement.

That's an interesting puzzle.  I wonder if we could enable the user
to provide an expression (or lambda) to perform the mapping.  Again,
I'll give it some thought.  That would make it even more general.

> 
>  What do you think? Let me know if you'd like me to stick them in on
>  the sourceforge feature request list, or whatever.
> 


Tim -

Glad to hear that it's working for you.

And, thanks much for the suggestions.  But, right now, I've got a
full time job.  I'm programming in Python and having fun at that.
And, they give me free tea everyday.  Also, they even pay me.  Very
nice.  We're saving up for a trip.

This is a short term position, 6 months, and will last another 3
months.  So, I'm guessing that I won't get to your requests soon.
But, I will try.  And, they're in my queue.

Thanks again for the suggestions.  Good ideas are hard to find.

- Dave


 

-- Dave Kuhlman
http://www.rexx.com/~dkuhlman

------------------------------------------------------------------------------
Try before you buy = See our experts in action!
The most comprehensive online learning library for Microsoft developers
is just $99.99! Visual Studio, SharePoint, SQL - plus HTML5, CSS3, MVC3,
Metro Style Apps, more. Free future releases when you subscribe now!
http://p.sf.net/sfu/learndevnow-dev2
_______________________________________________
generateds-users mailing list
generateds-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/generateds-users

Reply via email to