// Assuming "this" is a vector with type "T"autoopBinary(stringop, R)(inVector!(R, N) b) constif ( isValidOp(op, T, R) ) {
// op
}
// If we want for return value to be floatautoopBinary(stringop, R)(inVector!(R, N) b) constif ( isValidOp(op, T, R, float) ) {
// op
}
Returns true if op between type T and type R is compatible and returns type convertable to E (T)