Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

ENHANCED: C++-compatible exception handling + more wrapper functions and classes #39

Closed
wants to merge 10 commits into from

Commits on Apr 8, 2023

  1. ENHANCED: C++-compatible exception handling + more wrapper functions …

    …and classes
    
    SWI-cpp2-plx.h contains wrapper functions (imported from SWI-cpp2.h)
    - throw PlException for Prolog errors
    - most SWI-Prolog.h functions have a wrapper.
    verify() methods removed from PlAtom, PlTerm, etc.
    - the wrapper functions do the checking.
    Some executable code has been moved to SWI-cpp2.cpp
    - can be inlined, if desired.
    PlException is now a subclass of std::exception, not a subclass of PlTerm.
    PlTypeError, PlDomainError, etc. are no longer subclasses of PlTerm,
      but are functions for creating suitable PlException objects.
    The string comparison operators are deprecated; use as_string()
      and std::string comparison instead, which allows specifying the encoding.
    Added PlRecord, PlRecordExternal,  PlControl (used by PREDICATE_NONDET),  PlStream.
    Fixed numerous bugs and misfeatures; added tests.
    kamahen committed Apr 8, 2023
    Configuration menu
    Copy the full SHA
    c0791c3 View commit details
    Browse the repository at this point in the history

Commits on Apr 9, 2023

  1. ENHANCED: C++-compatible exception handling + more wrapper functions …

    …and classes
    
    SWI-cpp2-plx.h contains wrapper functions (imported from SWI-cpp2.h)
    - throw PlException for Prolog errors
    - most SWI-Prolog.h functions have a wrapper.
    verify() methods removed from PlAtom, PlTerm, etc.
    - the wrapper functions do the checking.
    Some executable code has been moved to SWI-cpp2.cpp
    - can be inlined, if desired.
    PlException is now a subclass of std::exception, not a subclass of PlTerm.
    PlTypeError, PlDomainError, etc. are no longer subclasses of PlTerm,
      but are functions for creating suitable PlException objects.
    The string comparison operators are deprecated; use as_string()
      and std::string comparison instead, which allows specifying the encoding.
    Added PlRecord, PlRecordExternal,  PlControl (used by PREDICATE_NONDET),  PlStream.
    Fixed numerous bugs and misfeatures; added tests.
    kamahen committed Apr 9, 2023
    Configuration menu
    Copy the full SHA
    3bff0f1 View commit details
    Browse the repository at this point in the history
  2. Merge branch 'exceptions-cleaned' of github.com:kamahen/packages-cpp …

    …into exceptions-cleaned
    kamahen committed Apr 9, 2023
    Configuration menu
    Copy the full SHA
    c502762 View commit details
    Browse the repository at this point in the history
  3. Remove bad merge, fix typo

    kamahen committed Apr 9, 2023
    Configuration menu
    Copy the full SHA
    2faadb3 View commit details
    Browse the repository at this point in the history

Commits on Apr 10, 2023

  1. Fix more typos

    kamahen committed Apr 10, 2023
    Configuration menu
    Copy the full SHA
    3c6aaad View commit details
    Browse the repository at this point in the history

Commits on Apr 14, 2023

  1. Configuration menu
    Copy the full SHA
    cbb3960 View commit details
    Browse the repository at this point in the history

Commits on Apr 16, 2023

  1. Configuration menu
    Copy the full SHA
    e627e08 View commit details
    Browse the repository at this point in the history
  2. Use scoped enums

    kamahen committed Apr 16, 2023
    Configuration menu
    Copy the full SHA
    38f1575 View commit details
    Browse the repository at this point in the history

Commits on Apr 17, 2023

  1. Configuration menu
    Copy the full SHA
    30a0b9f View commit details
    Browse the repository at this point in the history

Commits on Apr 18, 2023

  1. Configuration menu
    Copy the full SHA
    d3f7d39 View commit details
    Browse the repository at this point in the history