First I Created an abstract base class EPType that represent a variable type in the script.
Expand|Select|Wrap|Line Numbers
- internal abstract class EPType
- {
- private String m_Name;
- public String Name
- {
- get { return m_Name; }
- }
- public EPType(String Name)
- {
- m_Name = Name;
- }
- public abstract Object ParseValue(String str);
- }
Expand|Select|Wrap|Line Numbers
- public abstract class EPValueType : EPType
- {
- private EPReferenceType m_RefType;
- public EPValueType(String strName)
- : base(strName)
- {
- m_RefType = new EPRefernceType(strName + "Ref", this);
- }
- internal EPReferenceType ReferenceType
- {
- get { return m_RefType; }
- }
- }
- internal class EPReferenceType : EPType
- {
- private EPValueType m_Type;
- public EPReferenceType(String strName, EPValueType vType)
- : base(strName)
- {
- m_Type = vType;
- }
- public EPValueType Type
- {
- get { return m_Type; }
- }
- public override object ParseValue(string str)
- {
- return str;
- }
- }
hope I was clear...i got the the feeling that i wasn't :X
thanks in advance