MetalamaAPI documentationAspect APIMetalama.​Framework.​AdvisingIAdvice­FactoryImplement­Interface
Open sandboxFocus

IAdviceFactory.ImplementInterface Method

ImplementInterface(INamedType, INamedType, OverrideStrategy, Object)

Makes a type implement a new interface specified as an INamedType using aspect members marked by InterfaceMemberAttribute.

Declaration
IImplementInterfaceAdviceResult ImplementInterface(INamedType targetType, INamedType interfaceType, OverrideStrategy whenExists, object tags = null)
Parameters
Type Name Description
INamedType targetType

The type that must implement the new interface.

INamedType interfaceType

The type of the implemented interface.

OverrideStrategy whenExists

Determines the implementation strategy when the interface is already implemented by the target type. The default strategy is to fail with a compile-time error.

Object tags

An optional opaque object of anonymous type passed to templates and exposed under the Tags property of the meta API.

Returns
Type Description
IImplementInterfaceAdviceResult
See Also

ImplementInterface(INamedType, Type, OverrideStrategy, Object)

Makes a type implement a new interface specified as a reflection System.Type using aspect members marked by InterfaceMemberAttribute.

Declaration
IImplementInterfaceAdviceResult ImplementInterface(INamedType targetType, Type interfaceType, OverrideStrategy whenExists, object tags = null)
Parameters
Type Name Description
INamedType targetType

The type that must implement the new interface.

System.Type interfaceType

The type of the implemented interface.

OverrideStrategy whenExists

Determines the implementation strategy when the interface is already implemented by the target type. The default strategy is to fail with a compile-time error.

Object tags

An optional opaque object of anonymous type passed to templates and exposed under the Tags property of the meta API.

Returns
Type Description
IImplementInterfaceAdviceResult
See Also