コード例 #1
0
        public static void AddDefaultParameters(this MethodInvoke owner)
        {
            // init
            var context = owner.Context;

            // IFormattable
            owner.AddFromContext <IFormatting>(context, "fontStyle", x => x.FontStyleSpecified, x => x.FontStyle);
            owner.AddFromContext <IFormatting>(context, "fontVariant", x => x.FontVariantSpecified, x => x.FontVariant);
            owner.AddFromContext <IFormatting>(context, "fontWeight", x => x.FontWeightSpecified, x => x.FontWeight);
            owner.AddFromContext <IFormatting>(context, "textDecoration", x => x.TextDecorationSpecified, x => x.TextDecoration);
            owner.AddFromContext <IFormatting>(context, "verticalAlign", x => x.VerticalAlignSpecified, x => x.VerticalAlign);

            // strip periods
            owner.AddFromContext <IStripPeriods>(context, "stripPeriods", x => x.StripPeriodsSpecified, x => x.StripPeriods);

            // INamesOptions
            owner.AddFromContext <INamesOptions>(context, "namesDelimiter", x => x.Delimiter != null, x => x.Delimiter);

            // INameOptions
            owner.AddFromContext <INameOptions>(context, "and", x => x.AndSpecified, x => x.And);
            owner.AddFromContext <INameOptions>(context, "nameDelimiter", x => x.Delimiter != null, x => x.Delimiter);
            owner.AddFromContext <INameOptions>(context, "delimiterPrecedesEtAl", x => x.DelimiterPrecedesEtAlSpecified, x => x.DelimiterPrecedesEtAl);
            owner.AddFromContext <INameOptions>(context, "delimiterPrecedesLast", x => x.DelimiterPrecedesLastSpecified, x => x.DelimiterPrecedesLast);

            owner.AddFromContext <IEtAlOptions>(context, "etAlMin", x => x.EtAlMinSpecified, x => x.EtAlMin);
            owner.AddFromContext <IEtAlOptions>(context, "etAlUseFirst", x => x.EtAlUseFirstSpecified, x => x.EtAlUseFirst);
            owner.AddFromContext <IEtAlOptions>(context, "etAlSubsequentMin", x => x.EtAlSubsequentMinSpecified, x => x.EtAlSubsequentMin);
            owner.AddFromContext <IEtAlOptions>(context, "etAlSubsequentUseFirst", x => x.EtAlSubsequentUseFirstSpecified, x => x.EtAlSubsequentUseFirst);
            owner.AddFromContext <IEtAlOptions>(context, "etAlUseLast", x => x.EtAlUseLastSpecified, x => x.EtAlUseLast);

            owner.AddFromContext <INameOptions>(context, "nameFormat", x => x.FormatSpecified, x => x.Format);
            owner.AddFromContext <INameOptions>(context, "initialize", x => x.InitializeSpecified, x => x.Initialize);
            owner.AddFromContext <INameOptions>(context, "initializeWith", x => x.InitializeWith != null, x => x.InitializeWith);
            owner.AddFromContext <INameOptions>(context, "nameAsSortOrder", x => x.NameAsSortOrderSpecified, x => x.NameAsSortOrder);
            owner.AddFromContext <INameOptions>(context, "sortSeparator", x => x.SortSeparator != null, x => x.SortSeparator);
        }