## Uses of Class
org.apache.sysds.common.Types.OpOp2

- Packages that use Types.OpOp2
  Package | Description
  --- | ---
  org.apache.sysds.common |
  org.apache.sysds.hops |
  org.apache.sysds.hops.rewrite |
  org.apache.sysds.lops |
  org.apache.sysds.runtime.matrix.operators |

- - ### Uses of Types.OpOp2 in org.apache.sysds.common

    Methods in org.apache.sysds.common that return Types.OpOp2
    Modifier and Type | Method and Description
    --- | ---
    `static Types.OpOp2` | Types.OpOp2.`valueOf(String name)` Returns the enum constant of this type with the specified name.
    `static Types.OpOp2` | Types.OpOp2.`valueOfByOpcode(String opcode)`
    `static Types.OpOp2[]` | Types.OpOp2.`values()` Returns an array containing the constants of this enum type, in the order they are declared.

  - ### Uses of Types.OpOp2 in org.apache.sysds.hops

    Methods in org.apache.sysds.hops that return Types.OpOp2
    Modifier and Type | Method and Description
    --- | ---
    `Types.OpOp2` | BinaryOp.`getComplementPPredOperation()`
    `Types.OpOp2` | BinaryOp.`getOp()`

    Methods in org.apache.sysds.hops with parameters of type Types.OpOp2
    Modifier and Type | Method and Description
    --- | ---
    `static double` | OptimizerUtils.`getBinaryOpSparsity(double sp1, double sp2, Types.OpOp2 op, boolean worstcase)` Estimates the result sparsity for matrix-matrix binary operations (A op B)
    `static double` | OptimizerUtils.`getBinaryOpSparsityConditionalSparseSafe(double sp1, Types.OpOp2 op, LiteralOp lit)`
    `static long` | OptimizerUtils.`getOuterNonZeros(long n1, long n2, long nnz1, long nnz2, Types.OpOp2 op)`
    `static boolean` | OptimizerUtils.`isBinaryOpConditionalSparseSafe(Types.OpOp2 op)` Determines if a given binary op is potentially conditional sparse safe.
    `static boolean` | OptimizerUtils.`isBinaryOpConditionalSparseSafeExact(Types.OpOp2 op, LiteralOp lit)` Determines if a given binary op with scalar literal guarantee an output sparsity which is exactly the same as its matrix input sparsity.
    `static boolean` | OptimizerUtils.`isBinaryOpSparsityConditionalSparseSafe(Types.OpOp2 op, LiteralOp lit)`
    `void` | BinaryOp.`setOp(Types.OpOp2 iop)`

    Constructors in org.apache.sysds.hops with parameters of type Types.OpOp2
    Constructor and Description
    `AggBinaryOp(String l, Types.DataType dt, Types.ValueType vt, Types.OpOp2 innOp, Types.AggOp outOp, Hop in1, Hop in2)`
    `BinaryOp(String l, Types.DataType dt, Types.ValueType vt, Types.OpOp2 o, Hop inp1, Hop inp2)`
    `QuaternaryOp(String l, Types.DataType dt, Types.ValueType vt, Types.OpOp4 o, Hop inW, Hop inU, Hop inV, boolean umult, Types.OpOp1 uop, Types.OpOp2 sop)`

  - ### Uses of Types.OpOp2 in org.apache.sysds.hops.rewrite

    Methods in org.apache.sysds.hops.rewrite with parameters of type Types.OpOp2
    Modifier and Type | Method and Description
    --- | ---
    `static BinaryOp` | HopRewriteUtils.`createBinary(Hop input1, Hop input2, Types.OpOp2 op)`
    `static BinaryOp` | HopRewriteUtils.`createBinary(Hop input1, Hop input2, Types.OpOp2 op, boolean outer)`
    `static int` | HopRewriteUtils.`getValidOpPos(Types.OpOp2 input, Types.OpOp2... validTab)`
    `static int` | HopRewriteUtils.`getValidOpPos(Types.OpOp2 input, Types.OpOp2... validTab)`
    `static boolean` | HopRewriteUtils.`isBinary(Hop hop, Types.OpOp2... types)`
    `static boolean` | HopRewriteUtils.`isBinary(Hop hop, Types.OpOp2 type)`
    `static boolean` | HopRewriteUtils.`isBinary(Hop hop, Types.OpOp2 type, int maxParents)`
    `static boolean` | HopRewriteUtils.`isBinaryMatrixScalar(Hop hop, Types.OpOp2 type, double val)`
    `static boolean` | HopRewriteUtils.`isValidOp(Types.OpOp2 input, Types.OpOp2... validTab)`
    `static boolean` | HopRewriteUtils.`isValidOp(Types.OpOp2 input, Types.OpOp2... validTab)`
    `static boolean` | HopRewriteUtils.`isValidOuterBinaryOp(Types.OpOp2 op)`

  - ### Uses of Types.OpOp2 in org.apache.sysds.lops

    Methods in org.apache.sysds.lops that return Types.OpOp2
    Modifier and Type | Method and Description
    --- | ---
    `Types.OpOp2` | BinaryScalar.`getOperationType()`
    `Types.OpOp2` | BinaryM.`getOperationType()`
    `Types.OpOp2` | Binary.`getOperationType()`

    Methods in org.apache.sysds.lops with parameters of type Types.OpOp2
    Modifier and Type | Method and Description
    --- | ---
    `static String` | BinaryM.`getOpcode(Types.OpOp2 op)`

    Constructors in org.apache.sysds.lops with parameters of type Types.OpOp2
    Constructor and Description
    `Binary(Lop input1, Lop input2, Types.OpOp2 op, Types.DataType dt, Types.ValueType vt, Types.ExecType et)` Constructor to perform a binary operation.
    `Binary(Lop input1, Lop input2, Types.OpOp2 op, Types.DataType dt, Types.ValueType vt, Types.ExecType et, int k)`
    `BinaryM(Lop input1, Lop input2, Types.OpOp2 op, Types.DataType dt, Types.ValueType vt, Types.ExecType et, boolean colVector)` Constructor to perform a binary operation.
    `BinaryScalar(Lop input1, Lop input2, Types.OpOp2 op, Types.DataType dt, Types.ValueType vt)` Constructor to perform a scalar operation
    `BinaryUAggChain(Lop input1, Types.OpOp2 bop, Types.AggOp uaop, Types.Direction uadir, Types.DataType dt, Types.ValueType vt, Types.ExecType et)` Constructor to setup a map mult chain without weights
    `TernaryAggregate(Lop input1, Lop input2, Lop input3, Types.AggOp aggOp, Types.OpOp2 binOp, Types.Direction direction, Types.DataType dt, Types.ValueType vt, Types.ExecType et, int k)`
    `UAggOuterChain(Lop input1, Lop input2, Types.AggOp uaop, Types.Direction uadir, Types.OpOp2 bop, Types.DataType dt, Types.ValueType vt, Types.ExecType et)` Constructor to setup a unaryagg outer chain

  - ### Uses of Types.OpOp2 in org.apache.sysds.runtime.matrix.operators

    Methods in org.apache.sysds.runtime.matrix.operators that return Types.OpOp2
    Modifier and Type | Method and Description
    --- | ---
    `Types.OpOp2` | BinaryOperator.`getBinaryOperatorOpOp2()` Method for getting the hop binary operator type for a given function object.

Copyright © 2021 The Apache Software Foundation. All rights reserved.