示例#1
0
 internal protected virtual void Walk(AttributeAccess /*!*/ node)
 {
     if (Enter(node))
     {
         node.Qualifier.Walk(this);
     }
     Exit(node);
 }
示例#2
0
 public virtual void Exit(AttributeAccess/*!*/ node) { }
示例#3
0
 public virtual bool Enter(AttributeAccess/*!*/ node) { return true; }
		public static string[] GetMemberNames(AttributeAccess attributeAccess)
		{
			string[] methodNames = GetMemberNames(attributeAccess.Qualifier);
			
			List<string> names = new List<string>();
			names.AddRange(methodNames);
			
			string lastMemberName = attributeAccess.Name.Substring(0, attributeAccess.Name.Length - 1);
			names.Add(lastMemberName);

			return names.ToArray();
		}
		/// <summary>
		/// Creates a RubyControlField from an attribute access expression:
		/// 
		/// @textBox1.Name =
		/// self.textBox1 = 
		/// self.textBox1.Name = 
		/// </summary>
		public static RubyControlFieldExpression Create(AttributeAccess expression)
		{
			return Create(GetMemberNames(expression));
		}
示例#6
0
 public virtual void Exit(AttributeAccess /*!*/ node)
 {
 }
示例#7
0
 public virtual bool Enter(AttributeAccess /*!*/ node)
 {
     return(true);
 }