8000 GitHub - cheungyik/unirule: a simple logical expression evaluation engine
[go: up one dir, main page]
More Web Proxy on the site http://driver.im/
Skip to content

cheungyik/unirule

< 8000 /div>
 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

20 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

unirule-go

unirule is a logical expression parser & evaluation tool written in Go.

a logical expression is composed of a couple of operands, which should always be a valid boolean value,(either true or false), as well as logical operator: &, |, !, which concat those operands. pairs of parentheses ( and ) are also valid.

usage:

expr := grammar.Parse("(1|!2) &3& !4& 5  & !(!6|7|8)")

eval := &interpreter.EvalVisitor{
	Data: map[string]bool{
		"1": true,
		"2": true,
		"3": true,
		"4": false,
		"5": true,
		"6": false,
		"7": false,
		"8": false,
	},
}

expr.Accept(eval)

assert.True(eval.Result() == false)

About

a simple logical expression evaluation engine

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Go 100.0%
0