v0.2.15
This commit is contained in:
@@ -10,6 +10,7 @@ visibility
|
||||
-> linkage / ABI
|
||||
-> type / dispatch modifiers
|
||||
-> override
|
||||
-> access qualifier
|
||||
-> declaration kind
|
||||
```
|
||||
|
||||
@@ -31,8 +32,9 @@ public open class Service
|
||||
public abstract class Base
|
||||
public unsafe extern "C" union NativeValue
|
||||
protected open method calculate(...)
|
||||
protected const method inspect(...)
|
||||
protected override method calculate(...)
|
||||
protected final override method calculate(...)
|
||||
protected final override const method inspect(...)
|
||||
```
|
||||
|
||||
Les ordres alternatifs sont des erreurs syntaxiques même s'ils seraient théoriquement compréhensibles.
|
||||
@@ -83,4 +85,20 @@ Une exposition plus large nécessite un wrapper explicite.
|
||||
|
||||
Les détails d'accès via une autre instance d'une classe dérivée doivent être figés dans les règles finales de résolution membre.
|
||||
|
||||
## 16.5 Qualification `const` dans les contrats — V1 REQUIS — FIGÉ
|
||||
|
||||
La qualification `const` d'une méthode fait partie de son contrat de mutation.
|
||||
|
||||
Une implémentation ou un override doit conserver exactement cette qualification en V1.
|
||||
|
||||
```text
|
||||
const method
|
||||
doit être implémentée/overridée par const method
|
||||
|
||||
method
|
||||
doit être implémentée/overridée par method
|
||||
```
|
||||
|
||||
Saselang n'effectue pas de changement implicite de mutabilité dans une hiérarchie de contrats.
|
||||
|
||||
---
|
||||
|
||||
Reference in New Issue
Block a user