本文整理汇总了C#中CallSignature.HasDictionaryArgument方法的典型用法代码示例。如果您正苦于以下问题:C# CallSignature.HasDictionaryArgument方法的具体用法?C# CallSignature.HasDictionaryArgument怎么用?C# CallSignature.HasDictionaryArgument使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类CallSignature
的用法示例。
在下文中一共展示了CallSignature.HasDictionaryArgument方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: MakeSplatTests
/// <summary>
/// Makes test for param arrays and param dictionary parameters.
/// </summary>
private static BindingRestrictions MakeSplatTests(CallTypes callType, CallSignature signature, bool testTypes, IList<DynamicMetaObject> args) {
BindingRestrictions res = BindingRestrictions.Empty;
if (signature.HasListArgument()) {
res = MakeParamsArrayTest(callType, signature, testTypes, args);
}
if (signature.HasDictionaryArgument()) {
res = res.Merge(MakeParamsDictionaryTest(args, testTypes));
}
return res;
}
示例2: GetArgumentNamesAndTypes
/// <summary>
/// Gets all of the argument names and types. The instance argument is not included
/// </summary>
/// <param name="argNames">The names correspond to the end of argTypes.
/// ArgumentKind.Dictionary is unpacked in the return value.
/// This is set to an array of size 0 if there are no keyword arguments</param>
/// <param name="resultingArgs">Non named arguments are returned at the beginning.
/// ArgumentKind.List is unpacked in the return value. </param>
/// <param name="args">The MetaObject array which has the arguments for the call</param>
/// <param name="signature">The signature we're building the call for</param>
private static void GetArgumentNamesAndTypes(CallSignature signature, IList<DynamicMetaObject> args, out SymbolId[] argNames, out DynamicMetaObject[] resultingArgs) {
// Get names of named arguments
argNames = signature.GetArgumentNames();
resultingArgs = GetArgumentTypes(signature, args);
if (signature.HasDictionaryArgument()) {
// need to get names from dictionary argument...
GetDictionaryNamesAndTypes(args, ref argNames, ref resultingArgs);
}
}