Beispiel #1
0
        public static InterfacePropertyGenerator Property(string name, Type type, bool get, bool set)
        {
            var interfaceProp = new InterfacePropertyGenerator();

            interfaceProp.name = name;
            interfaceProp.type = type;
            interfaceProp.get  = (get ? "get; " : string.Empty);
            interfaceProp.set  = (set ? "set; " : string.Empty);
            return(interfaceProp);
        }
Beispiel #2
0
        private void DefineCode()
        {
            for (int i = 0; i < decorated.properties.Count; i++)
            {
                var prop = decorated.properties[i];
                @interface.AddProperty(InterfacePropertyGenerator.Property(prop.name, prop.type, prop.get, prop.set));
            }

            for (int i = 0; i < decorated.methods.Count; i++)
            {
                var method    = decorated.methods[i];
                var methodGen = InterfaceMethodGenerator.Method(method.name, method.returnType);

                foreach (KeyValuePair <string, Type> pair in method.parameters)
                {
                    methodGen.AddParameter(ParameterGenerator.Parameter(pair.Key, pair.Value.As().CSharpName(fullName: true), ParameterModifier.None));
                }

                @interface.AddMethod(methodGen);
            }
        }
Beispiel #3
0
 public InterfaceGenerator AddProperty(InterfacePropertyGenerator generator)
 {
     properties.Add(generator);
     return(this);
 }