/**
 * Created by KlimMalgin on 04.03.2015.
 */

var curry = require('core.lambda').curry,
    // --
    fcommon = require('fantasy-fkit-common'),
    operationWrap = fcommon.operationWrap,
    conditionResult = fcommon.conditionResult;

var gtOp =  curry(2, function (meV, valueV) { return conditionResult(meV > valueV, meV); });
var gteOp = curry(2, function (meV, valueV) { return conditionResult(meV >= valueV, meV); });

var ltOp =  curry(2, function (meV, valueV) { return conditionResult(meV < valueV, meV); });
var lteOp = curry(2, function (meV, valueV) { return conditionResult(meV <= valueV, meV); });

var equalOp =    curry(2, function (meV, valueV) { return conditionResult(meV == valueV, meV); });
var notEqualOp = curry(2, function (meV, valueV) { return conditionResult(meV != valueV, meV); });

module.exports = {

    gt: operationWrap(gtOp),
    gte: operationWrap(gteOp),
    lt: operationWrap(ltOp),
    lte: operationWrap(lteOp),

    equal: operationWrap(equalOp),
    notEqual: operationWrap(notEqualOp)
    
};

@@ -121,21 +121,8 @@
 re('
-fantasy-fkit-
 comm
@@ -825,131 +825,390 @@
 gt: 
-operationWrap(gtOp),%0A    gte: operationWrap(gteOp),%0A    lt: operationWrap(ltOp),%0A    lte: operationWrap(lteOp),%0A%0A    equal:
+function (valueO) %7B%0A        return operationWrap(this, gtOp, valueO);%0A    %7D,%0A    gte: function (valueO) %7B%0A        return operationWrap(this, gteOp, valueO);%0A    %7D,%0A    lt: function (valueO) %7B%0A        return operationWrap(this, ltOp, valueO);%0A    %7D,%0A    lte: function (valueO) %7B%0A        return operationWrap(this, lteOp, valueO);%0A    %7D,%0A%0A    equal: function (valueO) %7B%0A        return
  ope
@@ -1222,16 +1222,36 @@
 rap(
+this, 
 equalOp
-)
+, valueO)%0A    %7D
 ,%0A  
@@ -1261,16 +1261,51 @@
 otEqual:
+ function (valueO) %7B%0A        return
  operati
@@ -1311,16 +1311,22 @@
 ionWrap(
+this, 
 notEqual
@@ -1327,17 +1327,31 @@
 tEqualOp
-)
+, valueO)%0A    %7D
 %0A    %0A%7D;

fix operations