[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Fw: Help with Java coding utility
Date: Sat, 20 May 2000 15:45:06 +0100
From: Emmanuele Sordini <firstname.lastname@example.org>
To: SableCC Mailing List <email@example.com>
Subject: Help with Java coding utility
To all SableCC members
I'm quite new to SableCC (in fact, I downloaded it only a few days ago).
I was searching for a parser/lexer written in Java, I looked through
some alternatives and I found this to be probably the best. Therefore,
I would like to congratulate Etienne Gagnon on his outstanding work.
I'm also seeking help, because I would like to carry out a project of
mine, and I thought a parser like SableCC would be of some help with
this: I hereby give a short description.
When coding in Java, except for trivial cases I'm used to declare class
attributes (fields) as private or protected, and then to provide access
to them via getter/setter methods. Adding a getter/setter pair can
be quite a bore if the class is not very simple. Therefore, here's
what I would like to carry out with SableCC:
1) For all classes in a Java file (apart from inner classes), no matter
if they are public or not, I would like my parser to generate a
getter/setter method pair, and to put them at the end of the class
declaration, just before the closing brace. As a result of this
automated operation, the rest of the file should not be altered:
comments, indentation should remain exactly in place.
3) The name of the setter/getter for the attribute "someField" should
be: "setSomeField" and "getSomeField"; that is, the "get" or "set"
words plus the field's name with the first letter turned to
3) Here's an example of what the whole thing should look like:
public class Foo
protected A firstAttribute;
protectd B secondAttribute;
// constructors and methods
// Automatically-generated section
public A getFirstAttribute()
public void setFirstAttribute(A a)
firstAttribute = a;
// End of section
I started dabbling with the Java 1.1 example bundled with the
SableCC distribution. So far, by subclassing the DepthFirstAdapter
class I've only come up with something that stores into a list
every (type, fieldName) pair for each attribute. Now I'm in trouble
because I would like to write the code generator and make it
insert the getter/setter section in every class **without**
modifying its content in **any** way, comments included.
I apologize for this long post. I hope to have stirred the fellow
members' curiosity. I will be deeply grateful for every hints/
pointers/suggestions that could help me achieve this goal.
Thanks in advance,