コード例 #1
0
        public static InjectionInfo Parse(Type type, BindingFlags bindingFlags, InjectorFlags injectorFlags)
        {
            var info = new InjectionInfo();

            if (bindingFlags.Has(BindingFlags.SetProperty))
            {
                ParsePropertyAttributes <Inject>(type, info);
            }

            if (bindingFlags.Has(BindingFlags.SetField))
            {
                ParseFieldAttributes <Inject>(type, info);
            }

            if (!injectorFlags.Has(InjectorFlags.PreventPostInjection))
            {
                ParseMethodAttributes <PostInjection>(type, info);
            }

            if (!injectorFlags.Has(InjectorFlags.PreventCleanup))
            {
                ParseMethodAttributes <Cleanup>(type, info);
            }

            return(info);
        }