using System;
namespace ZeroLevel.Patterns.DependencyInjection
{
///
/// Constructor argument type
///
internal enum ConstructorParameterKind
{
///
/// Constant
///
None,
///
/// DI parameter
///
Parameter,
///
/// Dependency
///
Dependency
}
///
/// Constructor argument metadata
///
internal sealed class ConstructorParameter
{
///
/// Argument DI-type
///
public ConstructorParameterKind ParameterKind;
///
/// Argument contract type
///
public Type ParameterResolveType;
///
/// Dependency name
///
public string ParameterResolveName;
///
/// Allow null
///
public bool IsNullable;
///
/// Argument CLR type
///
public Type Type;
}
}