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

As standard layout method #616

Merged
merged 30 commits into from Jun 19, 2019
Merged

As standard layout method #616

merged 30 commits into from Jun 19, 2019

Commits on Apr 3, 2019

  1. Merge pull request #1 from rust-ndarray/master

    Merge main rep master to fork master
    Andrew committed Apr 3, 2019
    Configuration menu
    Copy the full SHA
    b39a0bb View commit details
    Browse the repository at this point in the history

Commits on Apr 12, 2019

  1. Implemented as_contiguous method

    andrei-papou committed Apr 12, 2019
    Configuration menu
    Copy the full SHA
    c0890db View commit details
    Browse the repository at this point in the history
  2. Added content check for the new array to the tests

    andrei-papou committed Apr 12, 2019
    Configuration menu
    Copy the full SHA
    4ea2c7d View commit details
    Browse the repository at this point in the history

Commits on Apr 26, 2019

  1. Return CowArray from as_contiguous instead of Array

    andrei-papou committed Apr 26, 2019
    Configuration menu
    Copy the full SHA
    5cdae91 View commit details
    Browse the repository at this point in the history
  2. Removed unused import

    andrei-papou committed Apr 26, 2019
    Configuration menu
    Copy the full SHA
    c82359a View commit details
    Browse the repository at this point in the history

Commits on Apr 28, 2019

  1. Fixed wording + minor improvements

    andrei.papou committed Apr 28, 2019
    Configuration menu
    Copy the full SHA
    5ce8d31 View commit details
    Browse the repository at this point in the history

Commits on Apr 30, 2019

  1. Added more tests + 2 methods for ArrayCow

    andrei-papou committed Apr 30, 2019
    Configuration menu
    Copy the full SHA
    2a67f25 View commit details
    Browse the repository at this point in the history

Commits on May 3, 2019

  1. Split single test into multiple ones

    Moved all `as_standard_layout`-related tests to the separate module
    andrei-papou committed May 3, 2019
    Configuration menu
    Copy the full SHA
    2d453c7 View commit details
    Browse the repository at this point in the history

Commits on May 5, 2019

  1. Fix try_ensure_unique for CowRepr

    The old implementation incorrectly handled the strides when the array
    was not in standard layout. (It created a `Vec` corresponding to an
    array in standard layout but didn't update the strides accordingly.)
    The new implementation calls `.to_owned()`, which handles the problem
    of efficiently creating an owned array, and then moves all the field
    values. Additionally, the `ensure_is_owned` function has been removed
    because it's equivalent to `DataMut::ensure_unique`.
    jturner314 committed May 5, 2019
    Configuration menu
    Copy the full SHA
    0d54de5 View commit details
    Browse the repository at this point in the history
  2. Remove into_view/owned_array from ArrayCow

    These functions were used only in the implementation of
    `CowRepr::to_owned`. They may turn out to be useful in the future, but
    until there's a clear use case that is not served by `.view()` and
    `.into_owned()`, let's remove them.
    jturner314 committed May 5, 2019
    Configuration menu
    Copy the full SHA
    1f4499f View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    2ede464 View commit details
    Browse the repository at this point in the history
  4. Configuration menu
    Copy the full SHA
    17e074b View commit details
    Browse the repository at this point in the history
  5. Impl clone_from_with_ptr for differing CowRepr variants

    The old implementation panicked when the variants were different; the
    new implementation performs the necessary clone instead of panicking.
    The variant of `self` after calling `clone_from_with_ptr` should match
    the variant of `other`. If the variants are initially different, the
    data from `other` needs to be cloned, and `self` needs to be changed
    to that variant.
    jturner314 committed May 5, 2019
    Configuration menu
    Copy the full SHA
    5506113 View commit details
    Browse the repository at this point in the history
  6. Add Cow types to preludes

    jturner314 committed May 5, 2019
    Configuration menu
    Copy the full SHA
    556bd59 View commit details
    Browse the repository at this point in the history

Commits on May 6, 2019

  1. Move ArrayCow method impls into separate module

    This is analogous to `impl_owned_array`, `impl_views`, and
    `impl_raw_views`.
    jturner314 committed May 6, 2019
    Configuration menu
    Copy the full SHA
    3101ca3 View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    131aea7 View commit details
    Browse the repository at this point in the history
  3. Add docs for ArrayCow

    jturner314 committed May 6, 2019
    Configuration menu
    Copy the full SHA
    0d68ea6 View commit details
    Browse the repository at this point in the history
  4. Remove A: Clone bound from CowRepr

    In the vast majority of cases, `A` will implement `Clone`. However,
    `ArrayCow` may still be useful for cases where `A` does not implement
    `Clone`.
    jturner314 committed May 6, 2019
    Configuration menu
    Copy the full SHA
    b84b3ec View commit details
    Browse the repository at this point in the history
  5. Use .raw_dim() instead of .dim()

    The compiler should have a slightly easier time making this efficient
    because there are fewer type conversions this way.
    jturner314 committed May 6, 2019
    Configuration menu
    Copy the full SHA
    ebd6cc4 View commit details
    Browse the repository at this point in the history
  6. Configuration menu
    Copy the full SHA
    b14b3de View commit details
    Browse the repository at this point in the history
  7. Merge pull request #4 from jturner314/as-contiguous-method

    Refine Cow stuff and as_standard_layout impl
    Andrew committed May 6, 2019
    Configuration menu
    Copy the full SHA
    9ec732a View commit details
    Browse the repository at this point in the history

Commits on May 15, 2019

  1. Merge pull request #5 from rust-ndarray/master

    Update fork master
    Andrew committed May 15, 2019
    Configuration menu
    Copy the full SHA
    efd686d View commit details
    Browse the repository at this point in the history

Commits on May 31, 2019

  1. Removed ArrayCow changes

    andrei-papou committed May 31, 2019
    Configuration menu
    Copy the full SHA
    1417bcb View commit details
    Browse the repository at this point in the history
  2. Merge pull request #8 from rust-ndarray/master

    Update master
    Andrew committed May 31, 2019
    Configuration menu
    Copy the full SHA
    8cd5d5a View commit details
    Browse the repository at this point in the history
  3. Merge branch 'master' of github.com:andrei-papou/ndarray into as-cont…

    …iguous-method
    andrei-papou committed May 31, 2019
    Configuration menu
    Copy the full SHA
    d85d4a8 View commit details
    Browse the repository at this point in the history
  4. Updated the tests

    andrei-papou committed May 31, 2019
    Configuration menu
    Copy the full SHA
    4c2d2dd View commit details
    Browse the repository at this point in the history
  5. Fixed rustfmt errors

    andrei-papou committed May 31, 2019
    Configuration menu
    Copy the full SHA
    ac51cfd View commit details
    Browse the repository at this point in the history

Commits on Jun 3, 2019

  1. Changes:

    - reduced the amount of the boilerplate code in related tests
    - added explicit assertion about the size of the source array when
      copying it to the standard layout.
    - added documentation string to the new method
    - removed redundant import
    andrei-papou committed Jun 3, 2019
    Configuration menu
    Copy the full SHA
    c2ae416 View commit details
    Browse the repository at this point in the history

Commits on Jun 19, 2019

  1. Configuration menu
    Copy the full SHA
    02d181d View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    f669f0f View commit details
    Browse the repository at this point in the history