Rest API

It is possible to run rust-code-analysis-cli as a HTTP service using REST API to share data between client and server. We will use the port 9090 to show you the possible ways to interact with the server.

Server

rust-code-analysis-cli can act as a server running on your localhost at a specific port.

rust-code-analysis-cli --serve --port 9090

The --port option sets the port used by the server. One possible value could be 9090.

Ping

If you want to ping the server, make a GET request at this URL:

http://127.0.0.1:9090/ping

Metrics

To get metrics formatted as a json file, make a POST request at this URL:

http://127.0.0.1:9090/metrics?file_name={filename}&unit={unit}

The filename parameter represents the path to the source file to be analyzed, while unit is a boolean value that can assume only 0 or 1. The latter tells rust-code-analysis-cli to consider only top-level metrics, while the former returns detailed metrics for all classes, functions, nested functions, and other sub-spaces.