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

Add Annotation Integration to Reader Ion C Facade #48

Closed
almann opened this issue Aug 7, 2020 · 1 comment · Fixed by #57
Closed

Add Annotation Integration to Reader Ion C Facade #48

almann opened this issue Aug 7, 2020 · 1 comment · Fixed by #57
Assignees
Labels
enhancement New feature or request

Comments

@almann
Copy link
Contributor

almann commented Aug 7, 2020

Annotation APIs and helpers should be added to the Ion C bindings.

Related to #37.

@almann almann added the enhancement New feature or request label Aug 7, 2020
@almann
Copy link
Contributor Author

almann commented Aug 7, 2020

When implementing this we should keep #51 in mind.

@almann almann self-assigned this Aug 8, 2020
almann added a commit that referenced this issue Aug 8, 2020
* Adds `Derive(PartialEq)` to `IonCError`.
* Adds `Derive(Copy, Clone)` to `IonCStringRef`.
* Adds `try_as*` to `IonCStringRef` to track the reference lifecycle.

Progress towards #48.
almann added a commit that referenced this issue Aug 8, 2020
* Adds `Derive(PartialEq)` to `IonCError`.
* Adds `Derive(Copy, Clone)` to `IonCStringRef`.
* Adds `try_as*` to `IonCStringRef` to track the reference lifecycle.

Progress towards #48.
@almann almann changed the title Add Annotation Integration to Reader/Writer Ion C Facades. Add Annotation Integration to Reader Ion C Facades. Aug 8, 2020
@almann almann changed the title Add Annotation Integration to Reader Ion C Facades. Add Annotation Integration to Reader Ion C Facade Aug 8, 2020
almann added a commit that referenced this issue Aug 8, 2020
* Adds `Derive(PartialEq)` to `IonCError`.
* Removes duplication comment around `IonCReaderHandle` and `IonCWriterHandle`.
  At this point they are both so different that it doesn't matter.
* Refactors `IonCStringRef` to `StrSliceRef` and makes it just over a `&str`
  versus `ION_STRING`. The use casees in the library are all UTF-8 results
  from the reader. This tightens up the implementation and makes it
  marginally easier to use.
* Adds `StrSlicesRef` for APIs that return multiple `&str` (e.g. annotations).
* Changes `get_field_name` and `read_string` to use `StrRef`.
* Changes `get_annotations` to return `StrSlicesRef`.
* Updates doc tests to use new APIs.

Resolves #48.
almann added a commit that referenced this issue Aug 8, 2020
* Adds `Derive(PartialEq)` to `IonCError`.
* Removes duplication comment around `IonCReaderHandle` and `IonCWriterHandle`.
  At this point they are both so different that it doesn't matter.
* Refactors `IonCStringRef` to `StrSliceRef` and makes it just over a `&str`
  versus `ION_STRING`. The use casees in the library are all UTF-8 results
  from the reader. This tightens up the implementation and makes it
  marginally easier to use.
  - Removes `DerefMut` implementation.
* Adds `StrSlicesRef` for APIs that return multiple `&str` (e.g. annotations).
* Changes `get_field_name` and `read_string` to use `StrRef`.
* Changes `get_annotations` to return `StrSlicesRef`.
* Updates doc tests to use new APIs.

Resolves #48.
almann added a commit that referenced this issue Aug 8, 2020
* Adds `Derive(PartialEq)` to `IonCError`.
* Removes duplication comment around `IonCReaderHandle` and `IonCWriterHandle`.
  At this point they are both so different that it doesn't matter.
* Refactors `IonCStringRef` to `StrSliceRef` and makes it just over a `&str`
  versus `ION_STRING`. The use casees in the library are all UTF-8 results
  from the reader. This tightens up the implementation and makes it
  marginally easier to use.
  - Removes `DerefMut` implementation.
* Adds `StrSlicesRef` for APIs that return multiple `&str` (e.g. annotations).
* Changes `get_field_name` and `read_string` to use `StrRef`.
* Changes `get_annotations` to return `StrSlicesRef`.
* Updates doc tests to use new APIs.

Resolves #48.
almann added a commit that referenced this issue Aug 8, 2020
* Adds `Derive(PartialEq)` to `IonCError`.
* Removes duplication comment around `IonCReaderHandle` and `IonCWriterHandle`.
  At this point they are both so different that it doesn't matter.
* Refactors `IonCStringRef` to `StrSliceRef` and makes it just over a `&str`
  versus `ION_STRING`. The use casees in the library are all UTF-8 results
  from the reader. This tightens up the implementation and makes it
  marginally easier to use.
  - Removes `DerefMut` implementation.
* Adds `StrSlicesRef` for APIs that return multiple `&str` (e.g. annotations).
* Adds low-level APIs to `ION_STRING` to manage lifetimes of references generated.
* Changes `get_field_name` and `read_string` to use `StrRef`.
* Changes `get_annotations` to return `StrSlicesRef`.
* Updates doc tests to use new APIs.

Resolves #48.
almann added a commit that referenced this issue Aug 8, 2020
* Adds `Derive(PartialEq)` to `IonCError`.
* Removes duplication comment around `IonCReaderHandle` and `IonCWriterHandle`.
  At this point they are both so different that it doesn't matter.
* Refactors `IonCStringRef` to `StrSliceRef` and makes it just over a `&str`
  versus `ION_STRING`. The use casees in the library are all UTF-8 results
  from the reader. This tightens up the implementation and makes it
  marginally easier to use.
  - Removes `DerefMut` implementation.
* Adds `StrSlicesRef` for APIs that return multiple `&str` (e.g. annotations).
* Adds low-level APIs to `ION_STRING` to manage lifetimes of references generated.
* Various cleanup of the `ION_STRING` APIs to make them safer.
* Changes `get_field_name` and `read_string` to use `StrRef`.
* Changes `get_annotations` to return `StrSlicesRef`.
* Updates doc tests to use new APIs.

Resolves #48.
@almann almann closed this as completed in #57 Aug 9, 2020
almann added a commit that referenced this issue Aug 9, 2020
* Adds `Derive(PartialEq)` to `IonCError`.
* Removes duplication comment around `IonCReaderHandle` and `IonCWriterHandle`.
  At this point they are both so different that it doesn't matter.
* Refactors `IonCStringRef` to `StrSliceRef` and makes it just over a `&str`
  versus `ION_STRING`. The use casees in the library are all UTF-8 results
  from the reader. This tightens up the implementation and makes it
  marginally easier to use.
  - Removes `DerefMut` implementation.
* Adds `StrSlicesRef` for APIs that return multiple `&str` (e.g. annotations).
* Adds low-level APIs to `ION_STRING` to manage lifetimes of references generated.
* Various cleanup of the `ION_STRING` APIs to make them safer.
* Changes `get_field_name` and `read_string` to use `StrRef`.
* Changes `get_annotations` to return `StrSlicesRef`.
* Updates doc tests to use new APIs.

Resolves #48.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
None yet
Development

Successfully merging a pull request may close this issue.

1 participant