Package org.smtlib.impl
Class Pos.Printable
java.lang.Object
org.smtlib.impl.Pos.Posable
org.smtlib.impl.Pos.Printable
- All Implemented Interfaces:
INode,IPos.IPosable
- Direct Known Subclasses:
Command,Pos.AbstractExpr,Response.AssertionsResponse,Response.AssignmentResponse,Response.Error,Response.ProofResponse,Response.Seq,Response.UnsatAssumptionsResponse,Response.UnsatCoreResponse,Response.ValueResponse,Script,Sexpr,SMTExpr.Attribute,SMTExpr.Binding,SMTExpr.Constructor,SMTExpr.Datatype,SMTExpr.Declaration,SMTExpr.FunctionDeclaration,SMTExpr.Keyword,SMTExpr.Logic,SMTExpr.MatchCase,SMTExpr.Pattern,SMTExpr.PatternTerms,SMTExpr.Selector,SMTExpr.SortDeclaration,SMTExpr.Theory,Sort,Sort.Abbreviation,Sort.ErrorDefinition,Sort.Family
- Enclosing class:
Pos
A Posable that also implements INode, with toString() delegating to Printer.
This toString() exists purely for debugger/IDE display convenience - it must
never be relied on for program logic or real output. Production code that needs
to render a node must go through IPrinter/Printer explicitly (e.g.
smtConfig.defaultPrinter.toString(...)), not this method.
A bare AST node has no reachable Configuration of its own (see issue #22 -- Printer's formatting rules, e.g. string-literal quoting, are per-Configuration, not global), so this constructs a fresh, throwaway default Configuration purely to drive formatting here. It's never shared or stored, so this can't reintroduce the static-state leak #22 fixed elsewhere -- it's simply "format using default rules," which is all a debugger/IDE display can reasonably do without knowing which real Configuration actually owns this node.
-
Field Summary
Fields inherited from class org.smtlib.impl.Pos.Posable
pos -
Constructor Summary
Constructors -
Method Summary
Methods inherited from class org.smtlib.impl.Pos.Posable
equals, hashCode, pos, setPos