Skip to main content

UndeclaredModuleProvider

rascal-0.43.0

Synopsis​

A scheme is used in a location for wich no provider has been registered.

Description​

Locations provide very flexible ways to access files and external data sources. There any many protocols (called schemes) that can be used (e.g., file, http, home and many others). This error is generated when an unknown scheme is used.

Remedy: Use an existing scheme.

Examples​

Misspelling the scheme for the current working directory (which is cwd) gives an error when the location is used:

rascal>import IO;
ok
rascal>readFileLines(|cdw:///courses/Recipes/demo/lang/Func/Parse.rsc|);
|mvn://org.rascalmpl--rascal--0.43.0/IO.rsc|(22019,781,<634,0>,<649,24>): IO("Unsupported scheme \'cdw\'")
at readFileLines(|mvn://org.rascalmpl--rascal--0.43.0/IO.rsc|(22019,781,<634,0>,<649,24>))
at readFileLines(|mvn://org.rascalmpl--rascal--0.43.0/IO.rsc|(22759,15,<648,58>,<648,73>))

This is fixed by using the proper scheme name:

rascal>readFileLines(|cwd:///courses/Recipes/demo/lang/Func/Parse.rsc|);
list[str]: ["module demo::lang::Func::Parse","","import demo::lang::Func::Func;","import ParseTree;","","Prog parse(loc l) = parse(#Prog, l);","Prog parse(str s) = parse(#Prog, s);"]