diff options
author | Minteck <contact@minteck.org> | 2021-12-21 15:25:09 +0100 |
---|---|---|
committer | Minteck <contact@minteck.org> | 2021-12-21 15:25:09 +0100 |
commit | e703e51c9c09b22e3bcda9a1faf1e05897f60616 (patch) | |
tree | 4fd67a209ad6988fbf569d7dff8bc37ba45baf95 /_mint/parser/modules.js | |
download | mint-e703e51c9c09b22e3bcda9a1faf1e05897f60616.tar.gz mint-e703e51c9c09b22e3bcda9a1faf1e05897f60616.tar.bz2 mint-e703e51c9c09b22e3bcda9a1faf1e05897f60616.zip |
Initial commit
Diffstat (limited to '_mint/parser/modules.js')
-rw-r--r-- | _mint/parser/modules.js | 25 |
1 files changed, 25 insertions, 0 deletions
diff --git a/_mint/parser/modules.js b/_mint/parser/modules.js new file mode 100644 index 0000000..816747a --- /dev/null +++ b/_mint/parser/modules.js @@ -0,0 +1,25 @@ +const MintParser = require('./base'); + +module.exports = class MintParserModules extends MintParser { + parse(file) { + let m; + let regex = /@(.*);/gm; + + while ((m = regex.exec(file)) !== null) { + if (m.index === regex.lastIndex) { + regex.lastIndex++; + } + + m.forEach((match, groupIndex) => { + if (groupIndex === 1) { + if (match.startsWith("mint.lang")) { + let name = match.trim().substr(10); + constructed += "const " + name + " = require(\"../_mint/internal/" + name + "\");\n"; + } + } + }); + } + + return file.replace(/@(.*);/gm, ""); + } +}
\ No newline at end of file |