Exceptions 
          The cvc5 API communicates certain errors using exceptions. We broadly
distinguish two types of exceptions:
          
           
            
             CVC5ApiException
            
           
          
          and
          
           
            
             CVC5ApiRecoverableException
            
           
          
          (which is derived from
          
           
            
             CVC5ApiException
            
           
          
          ).
         
          If any method fails with a
          
           
            
             CVC5ApiRecoverableException
            
           
          
          , the solver behaves as if the failing
method was not called. The solver can still be used safely.
         
          If, however, a method fails with a
          
           
            
             CVC5ApiException
            
           
          
          , the associated object may be in an unsafe state
and it should no longer be used.
         
- 
           
           
           
           
           
           
           
           
           
            
             class
            
           
           
           
           
            
             
              CVC5ApiException
             
            
           
           
           
           
            
             :
            
           
           
           
           
            
             public
            
           
           
           
           
            
             exception
            
           
           
            
           
           
 - 
           
Base class for all API exceptions. If thrown, all API objects may be in an unsafe state.
Subclassed by cvc5::CVC5ApiRecoverableException , cvc5::parser::ParserException
Public Functions
- 
              
              
              
              
              
              
              
              
              
               
                inline
               
              
              
              
              
               
                
                 CVC5ApiException
                
               
              
              
               (
              
              
               
                const
               
              
              
              
              
               
                std
               
              
              
               
                ::
               
              
              
               
                string
               
              
              
              
              
               
                &
               
              
              
               
                str
               
              
              
               )
              
              
               
              
              
 - 
              
Construct with message from a string.
- Parameters :
 - 
                
str – The error message.
 
 
- 
              
              
              
              
              
              
              
              
              
               
                inline
               
              
              
              
              
               
                
                 CVC5ApiException
                
               
              
              
               (
              
              
               
                const
               
              
              
              
              
               
                std
               
              
              
               
                ::
               
              
              
               
                stringstream
               
              
              
              
              
               
                &
               
              
              
               
                stream
               
              
              
               )
              
              
               
              
              
 - 
              
Construct with message from a string stream.
- Parameters :
 - 
                
stream – The error message.
 
 
- 
              
              
              
              
              
              
              
              
              
               
                inline
               
              
              
              
              
               
                const
               
              
              
              
              
               
                std
               
              
              
               
                ::
               
              
              
               
                string
               
              
              
              
              
               
                &
               
              
              
               
                
                 getMessage
                
               
              
              
               (
              
              
               )
              
              
              
              
               
                const
               
              
              
               
              
              
 - 
              
Retrieve the message from this exception.
- Returns :
 - 
                
The error message.
 
 
- 
              
              
              
              
              
              
              
              
              
               
                inline
               
              
              
              
              
               
                const
               
              
              
              
              
               
                char
               
              
              
              
              
               
                *
               
              
              
               
                
                 what
                
               
              
              
               (
              
              
               )
              
              
              
              
               
                const
               
              
              
              
              
               
                noexcept
               
              
              
              
              
               
                override
               
              
              
               
              
              
 - 
              
Retrieve the message as a C-style array.
- Returns :
 - 
                
The error message.
 
 
- 
              
              
              
              
              
              
              
              
              
               
                inline
               
              
              
              
              
               
                virtual
               
              
              
              
              
               
                void
               
              
              
              
              
               
                
                 toStream
                
               
              
              
               (
              
              
               
                std
               
              
              
               
                ::
               
              
              
               
                ostream
               
              
              
              
              
               
                &
               
              
              
               
                os
               
              
              
               )
              
              
              
              
               
                const
               
              
              
               
              
              
 - 
              
Printing: feel free to redefine toStream() . When overridden in a derived class, it’s recommended that this method print the type of exception before the actual message.
 
 - 
              
              
              
              
              
              
              
              
              
               
                inline
               
              
              
              
              
               
                
                 CVC5ApiException
                
               
              
              
               (
              
              
               
                const
               
              
              
              
              
               
                std
               
              
              
               
                ::
               
              
              
               
                string
               
              
              
              
              
               
                &
               
              
              
               
                str
               
              
              
               )
              
              
               
              
              
 
- 
           
           
           
           
           
           
           
           
           
            
             class
            
           
           
           
           
            
             
              CVC5ApiRecoverableException
             
            
           
           
           
           
            
             :
            
           
           
           
           
            
             public
            
           
           
           
           
            
             cvc5
            
           
           
            
             ::
            
           
           
            
             
              CVC5ApiException
             
            
           
           
            
           
           
 - 
           
A recoverable API exception. If thrown, API objects can still be used.
Subclassed by cvc5::CVC5ApiOptionException, cvc5::CVC5ApiUnsupportedException
Public Functions
- 
              
              
              
              
              
              
              
              
              
               
                inline
               
              
              
              
              
               
                
                 CVC5ApiRecoverableException
                
               
              
              
               (
              
              
               
                const
               
              
              
              
              
               
                std
               
              
              
               
                ::
               
              
              
               
                string
               
              
              
              
              
               
                &
               
              
              
               
                str
               
              
              
               )
              
              
               
              
              
 - 
              
Construct with message from a string.
- Parameters :
 - 
                
str – The error message.
 
 
- 
              
              
              
              
              
              
              
              
              
               
                inline
               
              
              
              
              
               
                
                 CVC5ApiRecoverableException
                
               
              
              
               (
              
              
               
                const
               
              
              
              
              
               
                std
               
              
              
               
                ::
               
              
              
               
                stringstream
               
              
              
              
              
               
                &
               
              
              
               
                stream
               
              
              
               )
              
              
               
              
              
 - 
              
Construct with message from a string stream.
- Parameters :
 - 
                
stream – The error message.
 
 
 - 
              
              
              
              
              
              
              
              
              
               
                inline
               
              
              
              
              
               
                
                 CVC5ApiRecoverableException
                
               
              
              
               (
              
              
               
                const
               
              
              
              
              
               
                std
               
              
              
               
                ::
               
              
              
               
                string
               
              
              
              
              
               
                &
               
              
              
               
                str
               
              
              
               )