This commit is contained in:
2026-09-12 08:56:27 +02:00
parent 426aa92d0d
commit 18306bdc8c
116 changed files with 11080 additions and 0 deletions

View File

@@ -0,0 +1,51 @@
# 32. Source root, modules et namespaces
## 32.1 Source root — V1 REQUIS — FIGÉ
Valeur par défaut :
```text
src
```
Configurable dans le manifest de package.
## 32.2 Module — V1 REQUIS — FIGÉ
Un module correspond à un répertoire relatif au `source_root`.
Un sous-répertoire représente un sous-module.
Un `module.saselmod` n'est pas nécessaire pour que le module existe.
## 32.3 Namespace — V1 REQUIS — FIGÉ
Le namespace correspond exactement au chemin relatif au `source_root`.
Exemple :
```text
src/saselang/compiler/lexer/Token.saseltype
```
contient :
```text
namespace saselang.compiler.lexer;
```
Le nom du package n'est pas automatiquement préfixé au namespace.
## 32.4 Segments de namespace — V1 REQUIS — FIGÉ
```regex
[a-z][a-z0-9_]*
```
ASCII lowercase uniquement.
Pas de `-` dans un segment de namespace.
Cette règle est volontairement différente de l'identité de package.
---