dotnet-core/release-notes/1.0/1.0.0-api/1.0.0-api_Microsoft.CSharp.RuntimeBinder.md

55 lines
2.9 KiB
Markdown
Raw Normal View History

2017-07-05 23:24:38 +02:00
# Microsoft.CSharp.RuntimeBinder
``` diff
+namespace Microsoft.CSharp.RuntimeBinder {
+ public static class Binder {
+ public static CallSiteBinder BinaryOperation(CSharpBinderFlags flags, ExpressionType operation, Type context, IEnumerable<CSharpArgumentInfo> argumentInfo);
+ public static CallSiteBinder Convert(CSharpBinderFlags flags, Type type, Type context);
+ public static CallSiteBinder GetIndex(CSharpBinderFlags flags, Type context, IEnumerable<CSharpArgumentInfo> argumentInfo);
+ public static CallSiteBinder GetMember(CSharpBinderFlags flags, string name, Type context, IEnumerable<CSharpArgumentInfo> argumentInfo);
+ public static CallSiteBinder Invoke(CSharpBinderFlags flags, Type context, IEnumerable<CSharpArgumentInfo> argumentInfo);
+ public static CallSiteBinder InvokeConstructor(CSharpBinderFlags flags, Type context, IEnumerable<CSharpArgumentInfo> argumentInfo);
+ public static CallSiteBinder InvokeMember(CSharpBinderFlags flags, string name, IEnumerable<Type> typeArguments, Type context, IEnumerable<CSharpArgumentInfo> argumentInfo);
+ public static CallSiteBinder IsEvent(CSharpBinderFlags flags, string name, Type context);
+ public static CallSiteBinder SetIndex(CSharpBinderFlags flags, Type context, IEnumerable<CSharpArgumentInfo> argumentInfo);
+ public static CallSiteBinder SetMember(CSharpBinderFlags flags, string name, Type context, IEnumerable<CSharpArgumentInfo> argumentInfo);
+ public static CallSiteBinder UnaryOperation(CSharpBinderFlags flags, ExpressionType operation, Type context, IEnumerable<CSharpArgumentInfo> argumentInfo);
+ }
+ public sealed class CSharpArgumentInfo {
+ public static CSharpArgumentInfo Create(CSharpArgumentInfoFlags flags, string name);
+ }
+ public enum CSharpArgumentInfoFlags {
+ Constant = 2,
+ IsOut = 16,
+ IsRef = 8,
+ IsStaticType = 32,
+ NamedArgument = 4,
+ None = 0,
+ UseCompileTimeType = 1,
+ }
+ public enum CSharpBinderFlags {
+ BinaryOperationLogical = 8,
+ CheckedContext = 1,
+ ConvertArrayIndex = 32,
+ ConvertExplicit = 16,
+ InvokeSimpleName = 2,
+ InvokeSpecialName = 4,
+ None = 0,
+ ResultDiscarded = 256,
+ ResultIndexed = 64,
+ ValueFromCompoundAssignment = 128,
+ }
+ public class RuntimeBinderException : Exception {
+ public RuntimeBinderException();
+ public RuntimeBinderException(string message);
+ public RuntimeBinderException(string message, Exception innerException);
+ }
+ public class RuntimeBinderInternalCompilerException : Exception {
+ public RuntimeBinderInternalCompilerException();
+ public RuntimeBinderInternalCompilerException(string message);
+ public RuntimeBinderInternalCompilerException(string message, Exception innerException);
+ }
+}
```