Exemple #1
0
 /// <summary>
 /// Gets the value of the indexer matching <paramref name="bindingFlags"/> of the given <paramref name="obj"/>
 /// </summary>
 /// <param name="obj">The object whose indexer is to be retrieved.</param>
 /// <param name="parameterTypes">The types of the indexer parameters (must be in the right order).</param>
 /// <param name="bindingFlags">The binding flags used to lookup the indexer.</param>
 /// <param name="parameters">The list of the indexer parameters.</param>
 /// <returns>The value returned by the indexer.</returns>
 public static object GetIndexer(this object obj, Type[] parameterTypes, Flags bindingFlags, params object[] parameters)
 {
     return(DelegateForGetIndexer(obj.GetTypeAdjusted(), bindingFlags, parameterTypes)(obj, parameters));
 }
Exemple #2
0
 /// <summary>
 /// Gets the value of the indexer of the given <paramref name="obj"/>
 /// </summary>
 /// <param name="obj">The object whose indexer is to be retrieved.</param>
 /// <param name="parameters">The list of the indexer parameters.
 /// The parameter types are determined from these parameters, therefore no parameter can be <code>null</code>.
 /// If any parameter is <code>null</code> (or you can't be sure of that, i.e. receive from a variable),
 /// use a different overload of this method.</param>
 /// <returns>The value returned by the indexer.</returns>
 public static object GetIndexer(this object obj, params object[] parameters)
 {
     return(DelegateForGetIndexer(obj.GetTypeAdjusted(), parameters.ToTypeArray())(obj, parameters));
 }