Explicit Operator

SWI-Prolog SbsSW.SwiPlCs

Swi-cs-pl - A CSharp class library to connect .NET languages with SWI-Prolog Explicit Operator
SwiPlCs interfaceSbsSW.SwiPlCsPlTermExplicitNarrowingExplicitExplicitExplicit(PlTerm to String)
Converts the Prolog argument into a string which implies Prolog atoms and strings are converted to the represented text or throw a PlTypeException.
Declaration Syntax
C# Visual Basic Visual C++
public static explicit operator string (
	PlTerm term
)
Public Shared Narrowing Operator CType ( _
	term As PlTerm _
) As String
static explicit operator String^ (
	PlTerm term
)
Parameters
term (PlTerm)
A PlTerm that can be converted to a string
Return Value
A C# string
Remarks

Converts the Prolog argument using PL_get_chars() using the flags CVT_ALL|CVT_WRITE|BUF_RING, which implies Prolog atoms and strings are converted to the represented text or throw a PlTypeException.

If the above call return 0 PL_get_chars is called a second time with the flags CVT_ALL|CVT_WRITE|BUF_RING|REP_UTF8.

All other data is handed to write/1.

MM 23.11.2010: Meines Erachtens nach führt libpl.REP_MB die gewünschte Konvertierung nach UNICODE (MultiByte) durch. Passt aber nicht zur Doku!
Exceptions
Exception Condition
PlTypeException Throws a PlTypeException exception
PreconditionException Is thrown if the operator is used on an uninitialized PlTerm

Assembly: SwiPlCs (Module: SwiPlCs) Version: 1.1.60301.0 (1.1.60301.0)