public virtual object VisitPropertyGetRegion(PropertyGetRegion propertyGetRegion, object data) {
			Debug.Assert((propertyGetRegion != null));
			Debug.Assert((propertyGetRegion.Attributes != null));
			Debug.Assert((propertyGetRegion.Block != null));
			foreach (AttributeSection o in propertyGetRegion.Attributes) {
				Debug.Assert(o != null);
				o.AcceptVisitor(this, data);
			}
			return propertyGetRegion.Block.AcceptVisitor(this, data);
		}
		public virtual object VisitPropertyGetRegion(PropertyGetRegion propertyGetRegion, object data) {
			Debug.Assert((propertyGetRegion != null));
			Debug.Assert((propertyGetRegion.Attributes != null));
			Debug.Assert((propertyGetRegion.Block != null));
			for (int i = 0; i < propertyGetRegion.Attributes.Count; i++) {
				AttributeSection o = propertyGetRegion.Attributes[i];
				Debug.Assert(o != null);
				nodeStack.Push(o);
				o.AcceptVisitor(this, data);
				o = (AttributeSection)nodeStack.Pop();
				if (o == null)
					propertyGetRegion.Attributes.RemoveAt(i--);
				else
					propertyGetRegion.Attributes[i] = o;
			}
			nodeStack.Push(propertyGetRegion.Block);
			propertyGetRegion.Block.AcceptVisitor(this, data);
			propertyGetRegion.Block = ((BlockStatement)(nodeStack.Pop()));
			return null;
		}
		public virtual object VisitPropertyGetRegion(PropertyGetRegion propertyGetRegion, object data) {
			throw new global::System.NotImplementedException("PropertyGetRegion");
		}
Example #4
0
	void GetAccessorDecl(out PropertyGetRegion getBlock, List<AttributeSection> attributes) {
		Statement stmt = null; Modifiers m;
		PropertyAccessorAccessModifier(out m);
		Expect(128);
		Location startLocation = t.Location;
		Expect(1);
		Block(out stmt);
		getBlock = new PropertyGetRegion((BlockStatement)stmt, attributes);
		Expect(113);
		Expect(128);
		getBlock.Modifier = m;
		getBlock.StartLocation = startLocation; getBlock.EndLocation = t.EndLocation;
		EndOfStmt();
	}
Example #5
0
	void AccessorDecls(out PropertyGetRegion getBlock, out PropertySetRegion setBlock) {
		List<AttributeSection> attributes = new List<AttributeSection>();
		AttributeSection section;
		getBlock = null;
		setBlock = null; 

		while (la.kind == 40) {
			AttributeSection(out section);
			attributes.Add(section);
		}
		if (StartOf(25)) {
			GetAccessorDecl(out getBlock, attributes);
			if (StartOf(26)) {
				attributes = new List<AttributeSection>();
				while (la.kind == 40) {
					AttributeSection(out section);
					attributes.Add(section);
				}
				SetAccessorDecl(out setBlock, attributes);
			}
		} else if (StartOf(27)) {
			SetAccessorDecl(out setBlock, attributes);
			if (StartOf(28)) {
				attributes = new List<AttributeSection>();
				while (la.kind == 40) {
					AttributeSection(out section);
					attributes.Add(section);
				}
				GetAccessorDecl(out getBlock, attributes);
			}
		} else SynErr(274);
	}
Example #6
0
		public PropertyDeclaration(Modifiers modifier, List<AttributeSection> attributes, string name, List<ParameterDeclarationExpression> parameters) {
			Modifier = modifier;
			Attributes = attributes;
			Name = name;
			Parameters = parameters;
			bodyStart = Location.Empty;
			bodyEnd = Location.Empty;
			getRegion = PropertyGetRegion.Null;
			setRegion = PropertySetRegion.Null;
			initializer = Expression.Null;
		}
		public sealed override object VisitPropertyGetRegion(PropertyGetRegion propertyGetRegion, object data) {
			this.BeginVisit(propertyGetRegion);
			object result = this.TrackedVisitPropertyGetRegion(propertyGetRegion, data);
			this.EndVisit(propertyGetRegion);
			return result;
		}
		public virtual object TrackedVisitPropertyGetRegion(PropertyGetRegion propertyGetRegion, object data) {
			return base.VisitPropertyGetRegion(propertyGetRegion, data);
		}