Skip to content

Document getting source_locations  #1065

Description

@computerquip-work

I was struggling a bit getting reasonable error codes. I use the exception-based API for readability purposes. Most of these functions take a source_location parameter but it turns out that the location information is lost when the exception is thrown. For example a call to at() on a json::object will drop the information and instead have the call site of the internal function:

value const&
object::
at(string_view key, source_location const& loc) const&
{
    return try_at(key).value(loc);
}

try_at gets called and throws so loc being set in the result type doesn't matter.
Is there a decent way to avoid this short of wrapping everything?

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions