Beispiel #1
0
 public static_property_reference(property_node pn, location loc) :
     base(pn.property_type, loc)
 {
     _prop = pn;
 }
Beispiel #2
0
 public non_static_property_reference(property_node pn, expression_node obj, location loc) :
     base(pn, loc)
 {
     _en = obj;
 }
 private void check_property_no_params(property_node pn, location loc)
 {
     if (pn.parameters.Count != 0)
     {
         AddError(loc, "PROPERTY_{0}_REFERENCE_WITH_INVALID_PARAMS_COUNT", pn.name);
     }
 }
 private void WritePropertyReference(property_node pn)
 {
 	if (pn is common_property_node)
 	{
 		bw.Write((byte)0);
 		WritePropertyReference(pn as common_property_node);
 	}
 	else if (pn is compiled_property_node)
 	{
 		bw.Write((byte)1);
 		bw.Write(GetCompiledProperty(pn as compiled_property_node));
 	}
 }
Beispiel #5
0
 protected void AddPropertyAccessors(property_node pn)
 {
     if (pn.get_function != null)
     {
         if (_members[pn.get_function] == null)
         {
             ConvertMember(pn.get_function);
         }
     }
     if (pn.set_function != null)
     {
         if (_members[pn.set_function] == null)
         {
             ConvertMember(pn.set_function);
         }
     }
 }
Beispiel #6
0
 protected common_property_node make_property(property_node orig_pn, location loc)
 {
     AddPropertyAccessors(orig_pn);
     common_property_node cpn = new common_property_node(
         orig_pn.name, this, generic_convertions.determine_type(
         orig_pn.property_type, _instance_params, false),
         (orig_pn.get_function == null) ? null : _members[orig_pn.get_function] as common_method_node,
         (orig_pn.set_function == null) ? null : _members[orig_pn.set_function] as common_method_node,
         loc, orig_pn.field_access_level, orig_pn.polymorphic_state);
     cpn.parameters.AddRange(make_parameters(orig_pn.parameters, null));
     return cpn;
 }
 public ThisPropertyCanNotBeWrited(property_node pn, location loc)
 {
     _prop = pn;
     _loc = loc;
 }
 public CanNotReferenceToStaticPropertyWithExpression(property_node prop, location loc, type_node tn)
 {
     _prop = prop;
     _loc = loc;
     _tn = tn;
 }
 public CanNotReferenceToNonStaticPropertyWithType(property_node prop, location loc, type_node tn)
 {
     _name = prop.name;
     _loc = loc;
     _tn = tn;
     _prop = prop;
 }
Beispiel #10
0
		public non_static_property_reference(property_node pn,expression_node obj,location loc) :
			base(pn,loc)
		{
			_en=obj;
		}
Beispiel #11
0
		public static_property_reference(property_node pn, location loc) :
			base(pn.property_type,loc)
		{
			_prop=pn;
		}