protected ConsumeEmitter(ConsumableTypeInfo consumableTypeInfo) { if (consumableTypeInfo == null) { throw new ArgumentNullException(nameof(consumableTypeInfo)); } ConsumableInfo = consumableTypeInfo; }
public static ConsumeEmitter GetConsumeEmitter(ConsumableTypeInfo consumableTypeInfo) { if (consumableTypeInfo == null) { throw new ArgumentNullException(nameof(consumableTypeInfo)); } if (consumableTypeInfo.IsVoid) { return(new VoidConsumeEmitter(consumableTypeInfo)); } if (consumableTypeInfo.IsByRef) { return(new ByRefConsumeEmitter(consumableTypeInfo)); } if (consumableTypeInfo.IsConsumable) { return(new ConsumableConsumeEmitter(consumableTypeInfo)); } return(new NonConsumableConsumeEmitter(consumableTypeInfo)); }
public ByRefConsumeEmitter(ConsumableTypeInfo consumableTypeInfo) : base(consumableTypeInfo) { }
public VoidConsumeEmitter(ConsumableTypeInfo consumableTypeInfo) : base(consumableTypeInfo) { }
public NonConsumableConsumeEmitter(ConsumableTypeInfo consumableTypeInfo) : base(consumableTypeInfo) { }