A compiler that processes JSDoc comments into an InferObject file, for utilizing with the InferJS-Library. The InferJS-Compiler is part of a bigger project called InferJS. The compiler can be used for other third party projects, that may need to interpret JSDoc comments into JSON type files.
To install the latest version of InferJS-Compiler locally with npm
:
Install: Locally
npm install inferjs-compiler --save
Install: Globally
npm install -g inferjs-compiler
Optional: If you would like to download the repo source code with git
:
git clone https://github.com/Codevendor/inferjs-compiler.git
To use the InferJS-Compiler from the command line and create InferObjects, please use the following commands.
# Global: CLI Run Format - InferJS-Compiler Globally Installed:
inferjs-compiler <cmd> <input> <inputOptions> <outputOptions> -o <output>
# or
# Local: CLI Node Run Format - InferJS-Compiler Not Globally Installed
node <path/to/inferjs-compiler> <cmd> <input> <inputOptions> <outputOptions> -o <output>
InferJS-Compiler: parse-files
Action | Cmd | Description |
---|---|---|
parse-files | -f | Parses single or multiple JavaScript files or directories, looking for JSDoc multi-line comments. Parses the JSDoc comments into an InferObject, that can be outputed to the terminal or specified output file. |
foo@console:~$: inferjs-compiler -f ./path/test1.js -o
foo@console:~$: inferjs-compiler -f ./path/test1.js -o ./path/infer-object.js
foo@console:~$: inferjs-compiler -f ./path/test1.js ./path/test2.js -o
foo@console:~$: inferjs-compiler -f ./test1.js ./test2.js -o ./path/infer-object.js
InferJS-Compiler: parse-file-list
Action | Cmd | Description |
---|---|---|
parse-file-list | -l | Parses a delimited file with JavaScript file or directory paths, looking for JSDoc multi-line comments per file. Parses the JSDoc comments into an InferObject, that can be outputed to the terminal or specified output file. Delimiter Defaults: to newline character. |
foo@console:~$: inferjs-compiler -l ./path/file-list.txt -o
foo@console:~$: inferjs-compiler -l ./path/file-list.txt -o ./path/infer-object.js
InferJS-Compiler: combine
Action | Cmd | Description |
---|---|---|
combine | -c | Combines multiple InferObject files together, outputed to the terminal or specified output file. |
foo@console:~$: inferjs-compiler -f ./path/infer-object1.js ./path/infer-object2.js -o
foo@console:~$: inferjs-compiler -f ./path/infer-object1.js ./path/infer-object2.js -o ./path/new-infer-object.js
InferJS-Compiler: Options
Option | Cmd | Description |
---|---|---|
--help | -h | Displays the help menu. |
--preview | -p | Displays information about the files to be processed, without actually executing process. |
--quiet | -q | Hide all display information from standard output. |
--stat | -s | Displays statistics about total infers parsed from files or directories. |
--version | -v | Displays the version number of the InferJS-Compiler. |
InferJS-Compiler: INPUT-OPTIONS
Option | Description |
---|---|
--input-options-flags | The file input flags for reading file. Flags: (r , r+ , rs , rs+ , w+ , wx+ , a+ , ax+ ) |
--input-options-encoding | The encoding type for the input files. Example: UTF8 . |
--input-options-recursive | Used in combination with -d, to recursively navigate through sub directories, looking for files to parse. |
--input-options-file-extensions | Used in combination with -d, to allow only specific file extensions to be parsed from directories. |
--input-options-delimiter | Used in combination with -l, to specify the delimiter for parsing the file list with. Defaults to newline character. |
InferJS-Compiler: OUPUT-OPTIONS
Option | Description |
---|---|
--output-options-env | The environment variable for the output file. (development , dev , production , prod ) Defaults to production . |
--output-options-flags | The file output flags for writing file. Flags: (r+ , rs+ , w , wx , w+ , wx+ , a , ax , a+ , ax+ ) |
--output-options-module | Generates the output InferObject, in a specific module type format. Formats: (esmodule , commonjs , script , json ). Defaults to script . |
InferJS-Compiler: NodeJS Read/Write Flags
Flag | Description |
---|---|
r | Open file for reading . An exception occurs if the file does not exist. |
r+ | Open file for reading and writing . An exception occurs if the file does not exist. |
rs | Open file for reading in synchronous mode. |
rs+ | Open file for reading and writing , asking the OS to open it synchronously . See notes for rs about using this with caution. |
w | Open file for writing . The file is created (if it does not exist) or truncated (if it exists). |
wx | Like w but fails if the path exists. |
w+ | Open file for reading and writing . The file is created (if it does not exist) or truncated (if it exists). |
wx+ | Like w+ but fails if path exists. |
a | Open file for appending . The file is created if it does not exist. |
ax | Like a but fails if the path exists. |
a+ | Open file for reading and appending . The file is created if it does not exist. |
ax+ | Like a+ but fails if the the path exists. |
Contributions are what make the open source community such an amazing place to learn, inspire, and create. Any contributions you make are greatly appreciated.
If you have a suggestion that would make this better, please fork the repo and create a pull request. You can also simply open an issue with the tag enhancement
.
Don't forget to give the project a ⭐ star, Thanks again!
- Fork the Project
- Create your Feature Branch (
git checkout -b feature/AmazingFeature
) - Commit your Changes (
git commit -m 'Add some AmazingFeature'
) - Push to the Branch (
git push origin feature/AmazingFeature
) - Open a Pull Request
Distributed under the MIT License. See LICENSE.txt
for more information.
- InferJS-Compiler Documentation - Information documentation for the InferJS-Compiler.
- InferJS-Compiler Issues - Direct all questions about the InferJS-Compiler.