Class BinaryOperatorHandler
  
  
  
  
    Inheritance
    
    
    BinaryOperatorHandler
   
      
      
      
      
      
      
      
      
      
      
      
      
      
      
      
      
  
  Namespace: Ludiq
  
  Syntax
  
    public abstract class BinaryOperatorHandler : OperatorHandler
   
  Constructors
  
  
  
  
  BinaryOperatorHandler(OperatorCategory, BinaryOperator, String, String, String, String, String)
  
  
  Declaration
  
    protected BinaryOperatorHandler(OperatorCategory category, BinaryOperator operator, string name, string verb, string symbol, string fancySymbol, string customMethodName)
   
  Parameters
  
  Properties
  
  
  
  
  operator
  
  
  Declaration
  
    public BinaryOperator operator { get; }
   
  Property Value
  
  Methods
  
  
  
  
  BothNullHandling()
  
  
  Declaration
  
    protected virtual object BothNullHandling()
   
  Returns
  
  
  
  
  CustomHandling(Object, Object)
  
  
  Declaration
  
    protected virtual object CustomHandling(object leftOperand, object rightOperand)
   
  Parameters
  
    
      
        | Type | 
        Name | 
        Description | 
      
    
    
      
        | Object | 
        leftOperand | 
         | 
      
      
        | Object | 
        rightOperand | 
         | 
      
    
  
  Returns
  
  
  
  
  GetCustomHandlingType(Type, Type)
  
  
  Declaration
  
    protected virtual Type GetCustomHandlingType(Type leftType, Type rightType)
   
  Parameters
  
    
      
        | Type | 
        Name | 
        Description | 
      
    
    
      
        | Type | 
        leftType | 
         | 
      
      
        | Type | 
        rightType | 
         | 
      
    
  
  Returns
  
  
  
  
  
  
  
  Declaration
  
    public abstract string GetDescriptionFormat(Type leftType, Type rightType)
   
  Parameters
  
    
      
        | Type | 
        Name | 
        Description | 
      
    
    
      
        | Type | 
        leftType | 
         | 
      
      
        | Type | 
        rightType | 
         | 
      
    
  
  Returns
  
  
  
  
  GetResultType(Type, Type)
  
  
  Declaration
  
    public Type GetResultType(Type leftType, Type rightType)
   
  Parameters
  
    
      
        | Type | 
        Name | 
        Description | 
      
    
    
      
        | Type | 
        leftType | 
         | 
      
      
        | Type | 
        rightType | 
         | 
      
    
  
  Returns
  
  
  
  
  Handle<TLeft, TRight>(Func<TLeft, TRight, Object>, Type)
  
  
  Declaration
  
    protected void Handle<TLeft, TRight>(Func<TLeft, TRight, object> handler, Type resultType)
   
  Parameters
  
    
      
        | Type | 
        Name | 
        Description | 
      
    
    
      
        | Func<TLeft, TRight, Object> | 
        handler | 
         | 
      
      
        | Type | 
        resultType | 
         | 
      
    
  
  Type Parameters
  
    
      
        | Name | 
        Description | 
      
    
    
      
        | TLeft | 
         | 
      
      
        | TRight | 
         | 
      
    
  
  
  
  
  Operate(Object, Object)
  
  
  Declaration
  
    public virtual object Operate(object leftOperand, object rightOperand)
   
  Parameters
  
    
      
        | Type | 
        Name | 
        Description | 
      
    
    
      
        | Object | 
        leftOperand | 
         | 
      
      
        | Object | 
        rightOperand | 
         | 
      
    
  
  Returns
  
  
  
  
  SingleNullHandling()
  
  
  Declaration
  
    protected virtual object SingleNullHandling()
   
  Returns
  
  
  
  
  Supports(Type, Type)
  
  
  Declaration
  
    public bool Supports(Type leftType, Type rightType)
   
  Parameters
  
    
      
        | Type | 
        Name | 
        Description | 
      
    
    
      
        | Type | 
        leftType | 
         | 
      
      
        | Type | 
        rightType | 
         | 
      
    
  
  Returns
  
  
  
  
  SupportsManual(Type, Type)
  
  
  Declaration
  
    public bool SupportsManual(Type leftType, Type rightType)
   
  Parameters
  
    
      
        | Type | 
        Name | 
        Description | 
      
    
    
      
        | Type | 
        leftType | 
         | 
      
      
        | Type | 
        rightType | 
         | 
      
    
  
  Returns
  
  
  
  
  TryGetResultType(Type, Type, out Type)
  
  
  Declaration
  
    public bool TryGetResultType(Type leftType, Type rightType, out Type type)
   
  Parameters
  
    
      
        | Type | 
        Name | 
        Description | 
      
    
    
      
        | Type | 
        leftType | 
         | 
      
      
        | Type | 
        rightType | 
         | 
      
      
        | Type | 
        type | 
         | 
      
    
  
  Returns
  
  Extension Methods