Open Leosimetti opened 2 years ago
This PR introduces a new interface with support for imports (analyzeSourceCodeDir) for analyzing multiple files.
analyzeSourceCodeDir
In EO, imports refer to the following constructs at the top of the file: +alias bndAlias pkgName.bndSrc Each import consists of three parts:
+alias bndAlias pkgName.bndSrc
bndAlias
pkgName
bndSrc
The following import functionality is currently supported:
Importing of packageless bindings +alias objName +alias objName.pathToNestedBnd
+alias objName
+alias objName.pathToNestedBnd
Importing of bindings with package +alias pkgName.srcPath
+alias pkgName.srcPath
Aliasing in Imports +alias name pkgName.srcPath
+alias name pkgName.srcPath
Sharing of top-level objects within the same package File1:
+package pkg [] > a
File2:
+package pkg [] > b a > @
The following is NOT supported:
a
+package pkg1 [] > a
+package pkg2 +alias pkg1.a [] > b a > @
File3:
+alias pkg2.b [] > c a > @ [] > d b > @
This PR introduces a new interface with support for imports (
analyzeSourceCodeDir
) for analyzing multiple files.Import Definition
In EO, imports refer to the following constructs at the top of the file:
+alias bndAlias pkgName.bndSrc
Each import consists of three parts:bndAlias
(binding name can be changed when its imported);pkgName
(packageless objects are stored are a part of the global package with no name);bndSrc
(can be either a top-level object or a path to some nested binding).Supported Functionality
The following import functionality is currently supported:
Importing of packageless bindings
+alias objName
+alias objName.pathToNestedBnd
Importing of bindings with package
+alias pkgName.srcPath
Aliasing in Imports
+alias name pkgName.srcPath
Sharing of top-level objects within the same package File1:
File2:
Unsupported Features
The following is NOT supported:
a
is also added to File3 File1:File2:
File3: