Overview | Package | Class | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

## com.declarativa.interprolog
Class PrologImplementationPeer

    java.lang.Object
      com.declarativa.interprolog.PrologImplementationPeer

Direct Known Subclasses:
  GNUPeer, SWIPeer, XSBPeer, YAPPeer

public abstract class PrologImplementationPeer
extends Object

Centers most of the Prolog implementation-dependent information

Field Summary
`static String` | `REGULAR_PROMPT`

Constructor Summary
`PrologImplementationPeer()` Variant to support only the partial functionality which does not depend on the existence of an engine
`PrologImplementationPeer(AbstractPrologEngine engine)`

Method Summary
`abstract String[]` | `alternativePrologExtensions(String filename)`
`String` | `executablePath(Properties p)`
`abstract String` | `executablePath(String binDirectory)`
`abstract String` | `getBinDirectoryProperty(Properties p)`
`PrologOperatorsContext` | `getOperators()`
`String` | `getPrologNumericVersion()`
`String` | `getPrologVersion()`
`abstract String` | `interprologFilename()` Returns the path for the Prolog file that must be loaded for InterProlog to function, USING '/' AS THE SEPARATION CHARACTER independently of the OS platform
`abstract boolean` | `isInterrupt(Object resultError)` True if an error, as obtained in a ResultFromProlog object, looks like an interrupt detection on the Prolog side, cf. predicate handleDeterministicGoal in interprolog.P/pl/etc. resultError is not null
`abstract Recognizer` | `makeBreakRecognizer()`
`abstract Recognizer` | `makePromptRecognizer()`
`abstract String` | `prologBinToBaseDirectory(String binDirectoryOrStartCommand)`
`String` | `unescapedFilePath(String p)` Some Prologs use '\' as an escape character in atoms, which can affect file paths under Windows.
`abstract String` | `visualizationFilename()` Returns the path for the Prolog file that must be loaded for InterProlog's visualization predicates to function, typically in the context of using a ListenerWindow.

Methods inherited from class java.lang.Object
`equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

Field Detail

### REGULAR_PROMPT

    public static String REGULAR_PROMPT

Constructor Detail

### PrologImplementationPeer

    public PrologImplementationPeer()

  Variant to support only the partial functionality which does not depend on the existence of an engine

### PrologImplementationPeer

    public PrologImplementationPeer(AbstractPrologEngine engine)

Method Detail

### getBinDirectoryProperty

    public abstract String getBinDirectoryProperty(Properties p)

### executablePath

    public abstract String executablePath(String binDirectory)

### getPrologVersion

    public String getPrologVersion()

### getPrologNumericVersion

    public String getPrologNumericVersion()

### alternativePrologExtensions

    public abstract String[] alternativePrologExtensions(String filename)

### prologBinToBaseDirectory

    public abstract String prologBinToBaseDirectory(String binDirectoryOrStartCommand)

### makePromptRecognizer

    public abstract Recognizer makePromptRecognizer()

### makeBreakRecognizer

    public abstract Recognizer makeBreakRecognizer()

### isInterrupt

    public abstract boolean isInterrupt(Object resultError)

  True if an error, as obtained in a ResultFromProlog object, looks like an interrupt detection on the Prolog side, cf. predicate handleDeterministicGoal in interprolog.P/pl/etc. resultError is not null

### interprologFilename

    public abstract String interprologFilename()

  Returns the path for the Prolog file that must be loaded for InterProlog to function, USING '/' AS THE SEPARATION CHARACTER independently of the OS platform

### visualizationFilename

    public abstract String visualizationFilename()

  Returns the path for the Prolog file that must be loaded for InterProlog's visualization predicates to function, typically in the context of using a ListenerWindow. Although the file is common for all Prologs, some (eg XSB) have a compiled form, others do not

### executablePath

    public String executablePath(Properties p)

### unescapedFilePath

    public String unescapedFilePath(String p)

  Some Prologs use '\' as an escape character in atoms, which can affect file paths under Windows. Use this method to preprocess all file paths passed to Prolog. this default implementation does no preprocessing, subclasses should define their own if needed

### getOperators

    public PrologOperatorsContext getOperators()

Overview | Package | Class | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD