Пример #1
0
        public void FunctionKind_ClassConstructor_ReturnsConstructorKind()
        {
            CreatePublicConstructor("MyClass.MyClass");

            global::EnvDTE.vsCMFunction kind = codeFunction.FunctionKind;

            Assert.AreEqual(global::EnvDTE.vsCMFunction.vsCMFunctionConstructor, kind);
        }
Пример #2
0
        public void FunctionKind_ClassMethod_ReturnsFunctionKind()
        {
            CreatePublicFunction("MyClass.MyFunction");

            global::EnvDTE.vsCMFunction kind = codeFunction.FunctionKind;

            Assert.AreEqual(global::EnvDTE.vsCMFunction.vsCMFunctionFunction, kind);
        }
Пример #3
0
        public void FunctionKind_ClassConstructor_ReturnsConstructorKind()
        {
            CreateFunction(
                "public class MyClass {\r\n" +
                "    public MyClass() {}\r\n" +
                "}");

            global::EnvDTE.vsCMFunction kind = codeFunction.FunctionKind;

            Assert.AreEqual(global::EnvDTE.vsCMFunction.vsCMFunctionConstructor, kind);
        }
Пример #4
0
        public void FunctionKind_ClassMethod_ReturnsFunctionKind()
        {
            CreateFunction(
                "public class MyClass {\r\n" +
                "    public void MyMethod() {}\r\n" +
                "}");

            global::EnvDTE.vsCMFunction kind = codeFunction.FunctionKind;

            Assert.AreEqual(global::EnvDTE.vsCMFunction.vsCMFunctionFunction, kind);
        }
Пример #5
0
        public global::EnvDTE.CodeFunction AddFunction(string name, global::EnvDTE.vsCMFunction kind, object type, object Position = null, global::EnvDTE.vsCMAccess Access = global::EnvDTE.vsCMAccess.vsCMAccessPublic)
        {
            IType returnType = FindType((string)type);

            context.CodeGenerator.AddMethodAtStart(typeDefinition, Access.ToAccessibility(), returnType, name);

            ReloadTypeDefinition();

            IMethod method = typeDefinition.Methods.FirstOrDefault(f => f.Name == name);

            if (method != null)
            {
                return(new CodeFunction(context, method));
            }
            return(null);
        }
Пример #6
0
        public global::EnvDTE.CodeFunction AddFunction(string name, global::EnvDTE.vsCMFunction kind, object type, object Position = null, global::EnvDTE.vsCMAccess Access = global::EnvDTE.vsCMAccess.vsCMAccessPublic)
        {
            var codeGenerator = new ClassCodeGenerator(Class);

            return(codeGenerator.AddPublicMethod(name, (string)type));
        }