or
or
By clicking below, you agree to our terms of service.
New to HackMD? Sign up
Syntax | Example | Reference | |
---|---|---|---|
# Header | Header | 基本排版 | |
- Unordered List |
|
||
1. Ordered List |
|
||
- [ ] Todo List |
|
||
> Blockquote | Blockquote |
||
**Bold font** | Bold font | ||
*Italics font* | Italics font | ||
~~Strikethrough~~ | |||
19^th^ | 19th | ||
H~2~O | H2O | ||
++Inserted text++ | Inserted text | ||
==Marked text== | Marked text | ||
[link text](https:// "title") | Link | ||
 | Image | ||
`Code` | Code |
在筆記中貼入程式碼 | |
```javascript var i = 0; ``` |
|
||
:smile: | ![]() |
Emoji list | |
{%youtube youtube_id %} | Externals | ||
$L^aT_eX$ | LaTeX | ||
:::info This is a alert area. ::: |
This is a alert area. |
On a scale of 0-10, how likely is it that you would recommend HackMD to your friends, family or business associates?
Please give us some advice and help us improve HackMD.
Do you want to remove this version name and description?
Syncing
xxxxxxxxxx
Reading notes: dyn* doesn't need to be special
tags:
reading-club
dyn* doesn't need to be special
Attendees: tmandry, eholk
Questions / Observations
Relation to dyn*
The good
dyn*
as a library (though this post doesn't quite show that)&move
usingBox<T, &mut MaybeUninit<T>>
Box
becomes the universal way of saying "I own the value referred to by this handle"T
I could turn it intoBox<T, TransparentStorage<T>>
T
Box
,Rc
andArc
become the universal way of saying I have a shared refcounted objectdyn* Trait + Clone
good enough to representArc<dyn Trait>
?clone
clone theArc
or the thing in theArc
?CloneByValue
UnsafeCell
in your type.. we could auto-derive this somehow…The bad
dyn*
needs to beDerefMut
": Not necessarily.Pin
would be "hidden" by thedyn*
dyn* Trait
whereTrait
hasself: Pin<..>
methods means that "the pointer behinddyn*
is pinned"dyn*
isUnpin
dyn*
<dyn*>::from(Box::pin(whatever))
Pin<Box<T>>: Unpin
dyn* &Trait
means you implement only&self
methodsTrait views
General dyn*, etc.
&dyn Trait: Trait
dyn* Trait: Trait
dyn* Trait: Deref<dyn Trait>
forall trait Trait: impl<T> Trait for Dyn<T> where T: Trait
dyn*
in a library)