All Downloads are FREE. Search and download functionalities are using the official Maven repository.

commonMain.it.unibo.tuprolog.bdd.BinaryDecisionDiagramVisitor.kt Maven / Gradle / Ivy

Go to download

Multi-platform library for representing and manipulating Binary Decision Diagrams

There is a newer version: 1.0.4
Show newest version
package it.unibo.tuprolog.bdd

import kotlin.js.JsName

/**
 * Implements the Visitor pattern over a [BinaryDecisionDiagram] to its
 * hierarchy, which only includes instances of [BinaryDecisionDiagram.Terminal]
 * and [BinaryDecisionDiagram.Variable]. This abstraction is the method of choice
 * to explore the internal structure of a BDD.
 *
 * @author Jason Dellaluce
 */
interface BinaryDecisionDiagramVisitor, E> {

    companion object

    @JsName("visitTerminal")
    fun visit(node: BinaryDecisionDiagram.Terminal): E

    @JsName("visitVariable")
    fun visit(node: BinaryDecisionDiagram.Variable): E
}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy