de.softwareforge:bool

A simple boolean expression parser

License

License

GroupId

GroupId

de.softwareforge
ArtifactId

ArtifactId

bool
Last Version

Last Version

1.0.0
Release Date

Release Date

Type

Type

jar
Description

Description

A simple boolean expression parser
Source Code Management

Source Code Management

https://github.com/hgschmie/bool

Download bool

How to add to project

<!-- https://jarcasting.com/artifacts/de.softwareforge/bool/ -->
<dependency>
    <groupId>de.softwareforge</groupId>
    <artifactId>bool</artifactId>
    <version>1.0.0</version>
</dependency>
// https://jarcasting.com/artifacts/de.softwareforge/bool/
implementation 'de.softwareforge:bool:1.0.0'
// https://jarcasting.com/artifacts/de.softwareforge/bool/
implementation ("de.softwareforge:bool:1.0.0")
'de.softwareforge:bool:jar:1.0.0'
<dependency org="de.softwareforge" name="bool" rev="1.0.0">
  <artifact name="bool" type="jar" />
</dependency>
@Grapes(
@Grab(group='de.softwareforge', module='bool', version='1.0.0')
)
libraryDependencies += "de.softwareforge" % "bool" % "1.0.0"
[de.softwareforge/bool "1.0.0"]

Dependencies

compile (1)

Group / Artifact Type Version
org.antlr : antlr4-runtime jar 4.7.2

test (2)

Group / Artifact Type Version
org.junit.jupiter : junit-jupiter-api jar
org.junit.jupiter : junit-jupiter-engine jar

Project Modules

There are no modules declared in this project.

bool - a simple boolean expression parser

evaluates simple boolean expressions.

  • TRUE, FALSE (constants)
  • AND, OR (boolean operations)
  • NOT (negation)
  • ( ) (parens)
  • arbitrary identifiers can be provided with a simple function. Names can be alphanumeric and _, must start with character or _.

Usage

    Function<String, Boolean> valueProvider = (name) -> {
        switch(name) {
            case "foo":
            case "bar":
                return Boolean.TRUE;
            case "baz":
            default:
                return Boolean.FALSE;
        }
    };

    BoolEval eval = new BoolEval("foo AND (bar OR NOT baz)");
    boolean result = eval.evaluate(valueProvider);

Maven

<dependency>
    <groupId>de.softwareforge</groupId>
    <artifactId>bool</artifactId>
    <version>1.0.0</version>
</dependency>

Changes

Keep a Changelog v1.0.0.

Unreleased

Version 1.0.0 (2020-06-24)

Added

  • First release

Build StatusLatest Release

Versions

Version
1.0.0