Microsoft\VisualBasic\Activities\VisualBasicHelper.cs (10)
610delegate bool FindMatch(LocationReference reference, string targetName, Type targetType, out bool terminateSearch);
615static bool FindLocationReferenceMatchShortcut(LocationReference reference, string targetName, Type targetType, out bool terminateSearch)
630static bool FindFirstLocationReferenceMatch(LocationReference reference, string targetName, Type targetType, out bool terminateSearch)
641static bool FindAllLocationReferenceMatch(LocationReference reference, string targetName, Type targetType, out bool terminateSearch)
849LocationReference finalReference = FindLocationReferencesFromEnvironment(
862LocationReference inlinedReference;
1493static LocationReference FindLocationReferencesFromEnvironment(LocationReferenceEnvironment environment, FindMatch findMatch, string targetName, Type targetType, out bool foundMultiple)
1499LocationReference toReturn = null;
1500foreach (LocationReference reference in currentEnvironment.GetLocationReferences())
1622LocationReference referenceToReturn = null;
System\Activities\CodeActivityPublicEnvironmentAccessor.cs (10)
50public bool TryGetAccessToPublicLocation(LocationReference publicLocation,
51ArgumentDirection accessDirection, out LocationReference equivalentLocation)
62public bool TryGetReferenceToPublicLocation(LocationReference publicReference,
63out LocationReference equivalentReference)
94internal bool TryGetAccessToPublicLocation(LocationReference publicLocation,
95ArgumentDirection accessDirection, bool useLocationReferenceValue, out LocationReference equivalentLocation)
113internal bool TryGetReferenceToPublicLocation(LocationReference publicReference,
114bool useLocationReferenceValue, out LocationReference equivalentReference)
132internal void CreateArgument(LocationReference sourceReference, ArgumentDirection accessDirection, bool useLocationReferenceValue = false)
138internal void CreateLocationArgument(LocationReference sourceReference, bool useLocationReferenceValue = false)
System\Activities\ExpressionUtilities.cs (34)
35static Type locationReferenceType = typeof(LocationReference);
42static MethodInfo activityContextGetValueGenericMethod = typeof(ActivityContext).GetMethod("GetValue", new Type[] { typeof(LocationReference) });
43static MethodInfo activityContextGetLocationGenericMethod = typeof(ActivityContext).GetMethod("GetLocation", new Type[] { typeof(LocationReference) });
44static MethodInfo locationReferenceGetLocationMethod = typeof(LocationReference).GetMethod("GetLocation", new Type[] { typeof(ActivityContext) });
62public static Expression CreateIdentifierExpression(LocationReference locationReference)
64return Expression.Call(RuntimeContextParameter, activityContextGetValueGenericMethod.MakeGenericMethod(locationReference.Type), Expression.Constant(locationReference, typeof(LocationReference)));
221internal static bool TryGetInlinedReference(CodeActivityPublicEnvironmentAccessor publicAccessor, LocationReference originalReference,
222bool isLocationExpression, out LocationReference inlinedReference)
471Func<ActivityContext, LocationReference> locationReferenceFunction;
475this.locationReferenceFunction = ExpressionUtilities.Compile<LocationReference>(locationReferenceExpression, expressionParameters);
480LocationReference locationReference = this.locationReferenceFunction(context);
1378static bool TryGetInlinedArgumentReference(MethodCallExpression originalExpression, Expression argumentExpression, out LocationReference inlinedReference, CodeActivityPublicEnvironmentAccessor publicAccessor, bool isLocationExpression)
1455LocationReference inlinedReference;
1458newExpression = Expression.Call(contextExpression, activityContextGetValueGenericMethod.MakeGenericMethod(returnType), Expression.Constant(inlinedReference, typeof(LocationReference)));
1481LocationReference inlinedReference;
1486newExpression = Expression.Call(Expression.Constant(inlinedReference, typeof(LocationReference)), locationReferenceGetLocationMethod, contextExpression);
1490newExpression = Expression.Call(contextExpression, activityContextGetLocationGenericMethod.MakeGenericMethod(returnType), Expression.Constant(inlinedReference, typeof(LocationReference)));
1515LocationReference inlinedReference;
1518newExpression = Expression.Call(contextExpression, activityContextGetValueGenericMethod.MakeGenericMethod(returnType), Expression.Constant(inlinedReference, typeof(LocationReference)));
1541LocationReference inlinedReference;
1546newExpression = Expression.Call(Expression.Constant(inlinedReference, typeof(LocationReference)), locationReferenceGetLocationMethod, originalExpression.Arguments[0]);
1550newExpression = Expression.Call(contextExpression, activityContextGetLocationGenericMethod.MakeGenericMethod(returnType), Expression.Constant(inlinedReference, typeof(LocationReference)));
1616static bool TryGetInlinedLocationReference(MethodCallExpression originalExpression, Expression locationReferenceExpression, out LocationReference inlinedReference, CodeActivityPublicEnvironmentAccessor publicAccessor, bool isLocationExpression)
1620LocationReference locationReference = null;
1622if (CustomMemberResolver(locationReferenceExpression, out tempLocationReference) && tempLocationReference is LocationReference)
1624locationReference = (LocationReference)tempLocationReference;
1630Expression<Func<LocationReference>> locationReferenceLambda = Expression.Lambda<Func<LocationReference>>(locationReferenceExpression);
1631Func<LocationReference> locationReferenceFunc = locationReferenceLambda.Compile();
1666LocationReference inlinedReference = null;
1685else if (TypeHelper.AreTypesCompatible(parameterExpression.Type, typeof(LocationReference)))
1697newExpression = Expression.Call(originalExpression.Object, activityContextGetValueGenericMethod.MakeGenericMethod(returnType), Expression.Constant(inlinedReference, typeof(LocationReference)));
1717LocationReference inlinedReference;
1720newExpression = Expression.Call(originalExpression.Object, activityContextGetLocationGenericMethod.MakeGenericMethod(returnType), Expression.Constant(inlinedReference, typeof(LocationReference)));