| module | |
| import Lean | |
| /-! | |
| # Tests for the `#where` command, `module` features | |
| -/ | |
| -- Restore the options to a pristine state | |
| set_option internal.cmdlineSnapshots false | |
| set_option printMessageEndPos false | |
| set_option Elab.inServer false | |
| /-- info: -- In root namespace with initial scope -/ | |
| #guard_msgs in #where | |
| /-! | |
| Test `noncomputable section` | |
| -/ | |
| noncomputable section | |
| /-- info: noncomputable section -/ | |
| #guard_msgs in #where | |
| end | |
| /-! | |
| Test `public section` | |
| -/ | |
| public section | |
| /-- info: public section -/ | |
| #guard_msgs in #where | |
| end | |
| /-! | |
| Test `@[expose] section` | |
| -/ | |
| @[expose] section | |
| /-- info: @[expose] section -/ | |
| #guard_msgs in #where | |
| end | |
| /-! | |
| Test `meta section` | |
| -/ | |
| meta section | |
| /-- info: meta section -/ | |
| #guard_msgs in #where | |
| end | |
| /-! | |
| Test combination | |
| -/ | |
| @[expose] public noncomputable meta section | |
| /-- info: @[expose] public noncomputable meta section -/ | |
| #guard_msgs in #where | |
| end | |
| /-! | |
| Test combination with interleaved namespace. Since `#where` only prints the current scope, | |
| all the `section` modifiers are combined. | |
| -/ | |
| public section | |
| namespace Foo | |
| @[expose] section Bar | |
| /-- | |
| info: @[expose] public section | |
| namespace Foo | |
| -/ | |
| #guard_msgs in #where | |
| end Bar | |
| end Foo | |
| end |