/// <summary>
 /// Invoke a method on the target object using <see cref="DefaultSerialization"/>
 /// </summary>
 public static Entry InvokeMethod(object target, MethodEntry methodEntry)
 {
     return(InvokeMethod(target, methodEntry, Serialization));
 }
        /// <summary>
        /// Check if all parameters are provided by the given <see cref="MethodEntry"/>
        /// </summary>
        private static bool ParametersProvided(ParameterInfo[] parameters, MethodEntry encodedMethod)
        {
            var encodedParameters = encodedMethod.Parameters.SubEntries;

            return(parameters.All(p => encodedParameters.Any(se => se.Identifier == p.Name)));
        }
 /// <summary>
 /// Create object instance from config model using entry for specialized types
 /// </summary>
 public static object CreateInstance(Type type, MethodEntry encodedConstructor)
 {
     return(CreateInstance(type, encodedConstructor, Serialization));
 }