0.1.0 • Published 11 years ago

operable v0.1.0

Weekly downloads
7
License
-
Repository
-
Last release
11 years ago

Operable

A really simple abstraction for dealing with operability. Great for binding with a synchronization system such as zookeeper to toggle functionality on and off in real time.

An Operable also returns the value of the path chosen when calling #fold() so this improves upon just using an if/else by abstracting it into an expression rather then a statement driven control statement.

Example

var Operable = require("operable");

// Create an operable switch
var logSwitch = new Operable(true);

// Create a function that makes use of the operable switch
var runSwitch = function() {
    return logSwitch.fold(
        function() { return "switch enabled"; },
        function() { return "switch disabled" }
    );
};

// print the result of calling the function that uses the switch
console.log(runSwitch());

// deactivate the switch
logSwitch.deactivate();

// print the result of calling the function that uses the switch
console.log(runSwitch());