public PropertyStatement(string name)
        {
            AccessModifier = AccessModifier.Public;
            getAccesor = GetAccesor.Empty;
            Modifier = Modifier.Virtual;
            ReturnType = CsType.String;
            setAccesor = SetAccesor.Empty;

            this.name = new NameElement(name);
            attributes = new List<AttributeStatement>();
            blockStatement = new BlockStatement {SingleLine = true};
        }
        public static PropertyStatement Set(this PropertyStatement propertyStatement, Action<BlockStatement> block,
                                            bool multiLine = false, AccessModifier accessModifier = null)
        {
            var blockStatement = new BlockStatement { SingleLine = !multiLine };
            block(blockStatement);

            var setAccesor = new SetAccesor(blockStatement);
            propertyStatement.SetAccesor = setAccesor;
            propertyStatement.GetAccesor.AccessModifier = accessModifier;

            return propertyStatement;
        }