Skip to content

bmkrocks1/evalogic

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

5 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

evalogic

A library to evaluate simple logical expression using only these three logical operators: & (and), | (or), and ! (not).

Usage

Install
npm install --save evalogic
Import the evaluate function
import { evaluate } from 'evalogic';

Evaluating Expression

Single value
evaluate('0'); // false
evaluate('1'); // true
OR expression
evaluate('0|0'); // false
evaluate('1|0'); // true
evaluate('1|1'); // true
evaluate('1|1|0'); // true
AND expression
evaluate('0&0'); // false
evaluate('1&0'); // false
evaluate('1&1'); // true
evaluate('1&1&0'); // false
NOT expression
evaluate('!0'); // true
evaluate('!1'); // false
evaluate('!0&0&1'); // false
Expression with parenthesis
evaluate('(0)'); // false
evaluate('(!0)'); // true
evaluate('(0)&(1)'); // false
evaluate('(0|1)&(!1)'); // false
evaluate('((1&1)&(1&0))&(1|0)'); // false
Invalid expression
evaluate('(0|0'); // throws Error: Invalid logical expression
evaluate(')0|0('); // throws Error: Invalid logical expression
evaluate('&0&0'); // throws Error: Invalid logical expression
evaluate('0&&0'); // throws Error: Invalid logical expression
evaluate('(0)(1)'); // throws Error: Invalid logical expression

Development

Tests
npm test

License

MIT

About

Evaluate simple logical expression

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published