Microsoft.Zing.Splicer.GetAccessorProperty C# (CSharp) Method

GetAccessorProperty() private method

private GetAccessorProperty ( string template, TypeNode type, Identifier name, Expression privExpr, Expression idExpr, Expression localInputOrOutput ) : Property
template string
type TypeNode
name Identifier
privExpr Expression
idExpr Expression
localInputOrOutput Expression
return Property
        private Property GetAccessorProperty(string template, TypeNode type,
            Identifier name, Expression privExpr, Expression idExpr, Expression localInputOrOutput)
        {
            Property accessor = Templates.GetPropertyTemplate(template);
            accessor.Type = type;
            if (accessor.Getter != null)
            {
                accessor.Getter.ReturnType = type;
                accessor.Getter.Name = Identifier.For("get_" + name.Name);
            }
            if (accessor.Setter != null)
            {
                accessor.Setter.Parameters[0].Type = type;
                accessor.Setter.Name = Identifier.For("set_" + name.Name);
            }
            accessor.Name = new Identifier(name.Name);
            Replacer.Replace(accessor.Getter, "_fieldName", privExpr);
            Replacer.Replace(accessor.Getter, "_fieldId", idExpr);
            Replacer.Replace(accessor.Getter, "_localInputOrOutput", localInputOrOutput);
            Replacer.Replace(accessor.Setter, "_fieldName", privExpr);
            Replacer.Replace(accessor.Setter, "_fieldId", idExpr);
            Replacer.Replace(accessor.Setter, "_localInputOrOutput", localInputOrOutput);
            return accessor;
        }