Skip to content

Tracking issue for Rc::downcast (rc_downcast feature) #44608

Closed

Description

@bluss

Tracking issue for the Rc::downcast method implemented in #44273

Activity

  1. added
    B-unstableBlocker: Implemented in the nightly compiler and unstable.
    C-tracking-issueCategory: An issue tracking the progress of sth. like the implementation of an RFC
    T-libs-api[DEPRECATED; DO NOT USE]
    on Sep 15, 2017
  2. SimonSapin commented on Mar 17, 2018

    @SimonSapin
    Contributor

    Looks good to me to stabilize.

    @rfcbot fcp merge

  3. added
    proposed-final-comment-periodProposed to merge/close by relevant subteam, see T-<team> label. Will enter FCP once signed off.
    on Mar 17, 2018
  4. rfcbot commented on Mar 17, 2018

    @rfcbot

    Team member @SimonSapin has proposed to merge this. The next step is review by the rest of the tagged teams:

    Concerns:

    Once a majority of reviewers approve (and none object), this will enter its final comment period. If you spot a major issue that hasn't been raised at any point in this process, please speak up!

    See this document for info about what commands tagged team members can give me.

  5. alexcrichton commented on Mar 19, 2018

    @alexcrichton
    Member

    @rfcbot concern arc

    We should add to Arc as well for consistency, right?

  6. SimonSapin commented on Mar 19, 2018

    @SimonSapin
    Contributor

    On the implementation PR:

    Arc is skipped because Any itself has no downcast for the case that makes most sense: Any + Send + Sync

    Why we don't implement downcast for Any + Send + Sync? Other than it isn't terribly necessary.

    We can still do that.

  7. alexcrichton commented on Mar 19, 2018

    @alexcrichton
    Member

    Indeed!

  8. bluss commented on Mar 19, 2018

    @bluss
    ContributorAuthor

    Hehe, I can't quite find the right way to pick the right implementations.

    All four combinations are "Trait", "Trait + Send", "Trait + Sync", "Trait + Send + Sync".

    The frugal approach is just the first one for Rc and just the last one for Arc. The perfect would be to write just one that covered them all, for each of Rc and Arc. I think the pragmatic would be all four for both Rc and Arc.

  9. alexcrichton commented on Mar 19, 2018

    @alexcrichton
    Member

    @bluss I'd be ok conservatively just doing Arc<Any + Send + Sync> as I doubt most other combinations don't actually show up that often in practice

  10. jsgf commented on May 17, 2018

    @jsgf
    Contributor

    Hi! I ran into this today. Any objections if I put together a PR for Arc<Any + Send + Sync>?

  11. sfackler commented on May 17, 2018

    @sfackler
    Member

    SGTM

  12. jsgf commented on May 17, 2018

    @jsgf
    Contributor

    Should I reuse this issue and rc_downcast, or create new ones?

  13. SimonSapin commented on May 17, 2018

    @SimonSapin
    Contributor

    Using the same tracking issue sounds fine: it’s a identical copy of a fairly small function. By the way, I think you can also remove an unsafe block by using the (relatively) new cast method of NonNull, instead of NonNull::new_unchecked.

  14. 7 remaining items

  15. added a commit that references this issue on Jun 1, 2018
  16. SimonSapin commented on Jun 6, 2018

    @SimonSapin
    Contributor

    @rfcbot resolve arc

    The requested feature was implemented in #50836.

  17. SimonSapin commented on Jun 6, 2018

    @SimonSapin
    Contributor

    Hmm it looks like only @alexcrichton can tell rfcbot to resolve the concern here, but I think we can consider the spirit of the process to be satisfied (if not the letter) and I would accept a stabilization PR. (Alex is away for a month.)

  18. alexcrichton commented on Jun 27, 2018

    @alexcrichton
    Member

    @rfcbot resolved arc

  19. added
    proposed-final-comment-periodProposed to merge/close by relevant subteam, see T-<team> label. Will enter FCP once signed off.
    disposition-mergeThis issue / PR is in PFCP or FCP with a disposition to merge it.
    on Jun 27, 2018
  20. rfcbot commented on Jun 27, 2018

    @rfcbot

    🔔 This is now entering its final comment period, as per the review above. 🔔

  21. added
    final-comment-periodIn the final comment period and will be merged soon unless new substantive objections are raised.
    and removed
    proposed-final-comment-periodProposed to merge/close by relevant subteam, see T-<team> label. Will enter FCP once signed off.
    on Jun 27, 2018
  22. added a commit that references this issue on Jul 6, 2018
    7fbc389
  23. added a commit that references this issue on Jul 7, 2018
    e382338
  24. added and removed
    final-comment-periodIn the final comment period and will be merged soon unless new substantive objections are raised.
    on Jul 7, 2018
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

    B-unstableBlocker: Implemented in the nightly compiler and unstable.C-tracking-issueCategory: An issue tracking the progress of sth. like the implementation of an RFCT-libs-api[DEPRECATED; DO NOT USE]disposition-mergeThis issue / PR is in PFCP or FCP with a disposition to merge it.finished-final-comment-periodThe final comment period is finished for this PR / Issue.

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions