Exemple #1
0
        private static CodeMemberProperty ProvideIndentLengthsProperty(CodeTypeMemberCollection members, CodeMemberField indentLengthsField)
        {
            CodeMemberProperty codeMemberProperty = new CodeMemberProperty();

            codeMemberProperty.Type = new CodeTypeReference(typeof(List <int>));
            codeMemberProperty.Name = "indentLengths";
            codeMemberProperty.AddSummaryComment("A list of the lengths of each indent that was added with PushIndent");
            codeMemberProperty.Attributes = MemberAttributes.Private;
            codeMemberProperty.GetStatements.Add(CodeDomHelpers.IfVariableNullThenInstantiateType(indentLengthsField.Ref(), typeof(List <int>)));
            codeMemberProperty.GetStatements.Add(new CodeMethodReturnStatement(indentLengthsField.Ref()));
            members.Add(codeMemberProperty);
            return(codeMemberProperty);
        }
Exemple #2
0
        private static CodeMemberProperty ProvideErrorsProperty(CodeTypeMemberCollection members, CodeMemberField errors)
        {
            CodeMemberProperty codeMemberProperty = new CodeMemberProperty();

            codeMemberProperty.Type = new CodeTypeReference(typeof(CompilerErrorCollection));
            codeMemberProperty.Name = "Errors";
            codeMemberProperty.AddSummaryComment("The error collection for the generation process");
            codeMemberProperty.Attributes = (MemberAttributes)24578;
            codeMemberProperty.GetStatements.Add(CodeDomHelpers.IfVariableNullThenInstantiateType(errors.Ref(), typeof(CompilerErrorCollection)));
            codeMemberProperty.GetStatements.Add(new CodeMethodReturnStatement(errors.Ref()));
            members.Add(codeMemberProperty);
            return(codeMemberProperty);
        }
        private static CodeMemberProperty ProvideErrorsProperty(CodeTypeMemberCollection members, CodeMemberField errors)
        {
            CodeMemberProperty member = new CodeMemberProperty {
                Type = new CodeTypeReference(typeof(CompilerErrorCollection)),
                Name = "Errors"
            };

            member.AddSummaryComment("The error collection for the generation process");
            member.Attributes = MemberAttributes.Public | MemberAttributes.Final;
            member.GetStatements.Add(CodeDomHelpers.IfVariableNullThenInstantiateType(errors.Ref(), typeof(CompilerErrorCollection)));
            member.GetStatements.Add(new CodeMethodReturnStatement(errors.Ref()));
            members.Add(member);
            return(member);
        }
Exemple #4
0
        private static CodeMemberProperty ProvideGenerationEnvironmentProperty(CodeTypeMemberCollection members, CodeMemberField generationTimeBuilder)
        {
            CodeMemberProperty codeMemberProperty = new CodeMemberProperty();

            codeMemberProperty.StartDirectives.Add(new CodeRegionDirective(CodeRegionMode.Start, "Properties"));
            codeMemberProperty.Type = new CodeTypeReference(typeof(StringBuilder));
            codeMemberProperty.Name = "GenerationEnvironment";
            codeMemberProperty.AddSummaryComment("The string builder that generation-time code is using to assemble generated output");
            codeMemberProperty.Attributes = (MemberAttributes)12290;
            codeMemberProperty.GetStatements.Add(CodeDomHelpers.IfVariableNullThenInstantiateType(generationTimeBuilder.Ref(), typeof(StringBuilder)));
            codeMemberProperty.GetStatements.Add(new CodeMethodReturnStatement(generationTimeBuilder.Ref()));
            codeMemberProperty.SetStatements.Add(new CodeAssignStatement(generationTimeBuilder.Ref(), new CodePropertySetValueReferenceExpression()));
            members.Add(codeMemberProperty);
            return(codeMemberProperty);
        }