mirror of
https://github.com/bspeice/speice.io
synced 2024-12-22 16:48:10 -05:00
Orphan rule
This commit is contained in:
parent
e24cc4c7a5
commit
3709bcd0fd
@ -266,13 +266,16 @@ auto some_func(MyConcept auto value) -> void {
|
||||
}
|
||||
|
||||
void some_func(LocalImpl value) {
|
||||
// NOTE: This is actually a recursive call because `LocalImpl` is more specific than `auto`,
|
||||
// so will overflow the stack.
|
||||
// NOTE: Because `LocalImpl` is more specific than `auto`, this is a recursive call and
|
||||
// will overflow the stack.
|
||||
// We use `some_func_` above to uniquely name the function we actually want to call.
|
||||
some_func(value);
|
||||
}
|
||||
```
|
||||
|
||||
Potentially worth mentioning orphan rule in Rust as limit to extension methods - can't implement
|
||||
remote traits for remote types.
|
||||
|
||||
# Checking a type fulfills the concept
|
||||
|
||||
With concepts, you find out that there's an issue only when you attempt to use it. Traits in Rust
|
||||
|
Loading…
Reference in New Issue
Block a user