Class DefiniteClauseGrammerConvertor

java.lang.Object
org.projog.core.predicate.udp.DefiniteClauseGrammerConvertor

final class DefiniteClauseGrammerConvertor extends Object
Provides support for Definite Clause Grammars (DCG).

DCGs provide a convenient way to express grammar rules.

  • Constructor Details

    • DefiniteClauseGrammerConvertor

      DefiniteClauseGrammerConvertor()
  • Method Details

    • isDCG

      static boolean isDCG(Term dcgTerm)
    • convert

      static Term convert(Term dcgTerm)
      Parameters:
      dcgTerm - predicate with name "-->" and two arguments
    • convertSingleListTermAntecedent

      private static Term convertSingleListTermAntecedent(Term consequent, Term antecedent)
    • convertConjunctionOfAtomsAntecedent

      private static Term convertConjunctionOfAtomsAntecedent(Term consequent, Term[] conjunctionOfAtoms)
    • appendToEndOfList

      private static Term appendToEndOfList(Term list, Term newTail)
    • createNewPredicate

      private static Term createNewPredicate(Term original, Term previous, Term next)
    • getConsequent

      private static Term getConsequent(Term dcgTerm)
    • getAntecedent

      private static Term getAntecedent(Term dcgTerm)
    • hasSingleListWithSingleAtomElement

      private static boolean hasSingleListWithSingleAtomElement(Term[] terms)