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

Removes the separate no_text_values collection in Struct #430

Merged
merged 4 commits into from
Sep 27, 2022

Commits on Sep 23, 2022

  1. Removes the separate no_text_values collection in Struct

    * Introduces the `SymbolRef` type, a borrowed view of a text
      value for field lookups.
    * Introduces the `AsSymbolRef` trait to allow values to be
      temporarily viewed as a `SymbolRef`.
    * Modifies the `IonStruct` trait to use `AsSymbolRef` for lookups
      instead of `AsRef<str>`. This change enables lookups for unknown
      text.
    * Modifies the `StructRef` type to use `AsSymbolRef` for its lookup
      methods.
    * Modifies the `Struct` type to use `AsSymbolRef` for its lookup
      methods.
    * Modifies the `Struct` type to store its values in a `SmallVec`,
      improving the performance of the common case. The first field
      value for any given field name will be stored directly in the
      map. If the field name is repeated, the additional values will
      be stored elsewhere on the heap. Prior to this change, *all*
      field values were stored on the heap in a `Vec`.
    * Adds `len()` and `is_empty()` methods to the `Struct` type.
      We will likely wish to move these into the `IonStruct` trait
      in the future.
    * Tweaks the ion-tests test runner to print the Ion text of the
      elements that caused test failures instead of using their
      auto-generated `Debug` format.
    zslayton committed Sep 23, 2022
    Configuration menu
    Copy the full SHA
    d244406 View commit details
    Browse the repository at this point in the history

Commits on Sep 27, 2022

  1. Fixing typo

    zslayton authored Sep 27, 2022
    Configuration menu
    Copy the full SHA
    145b4b1 View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    7ccb7d7 View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    e58072f View commit details
    Browse the repository at this point in the history