public IParsingResult Apply(ICommandParserOptions options, CommandModel model, string[] args, ref int argIndex) { model.Requires(nameof(model)).IsNotNull().Evaluate(t => this.TargetProperty.DeclaringType.IsAssignableFrom(t.GetType()), @"Incompatible model type."); return(this.DoApply(options, model, args, ref argIndex)); }