This PR adds support for the following import variants to the experimental module system: * `private import`: Makes the imported constants available only in non-exported contexts such as proofs. In particular, the import will not be loaded, or required to exist at all, when the current module is imported into other modules. * `import all`: Makes non-exported information such as proofs of the imported module available in non-exported contexts in the current module. Main purpose is to allow for reasoning about imported definitions when they would otherwise be opaque. TODO: adjust name resolution so that imported `private` decls are accessible through syntax. They can be combined into `private import all`, which will likely be the most common usage of `import all`. |
||
|---|---|---|
| .. | ||
| builtin_attr | ||
| debug | ||
| deriving | ||
| frontend | ||
| initialize | ||
| misc | ||
| module | ||
| path with spaces | ||
| prv | ||
| test_extern | ||
| user_attr | ||
| user_attr_app | ||
| user_ext | ||
| user_opt | ||
| user_plugin | ||
| .gitignore | ||