class AnalyzerFlask

Defined in:

analyzer/analyzers/analyzer_flask.cr

Constant Summary

HTTP_METHOD_NAMES = ["get", "post", "put", "patch", "delete", "head", "options", "trace"]
INDENT_SPACE_SIZE = 4
REGEX_PYTHON_VARIABLE_NAME = "[a-zA-Z_][a-zA-Z0-9_]*"
REQUEST_PARAM_FIELD_MAP = {"data" => {["POST", "PUT", "PATCH", "DELETE"], "form"}, "args" => {["GET"], "query"}, "form" => {["POST", "PUT", "PATCH", "DELETE"], "form"}, "files" => {["POST", "PUT", "PATCH", "DELETE"], "form"}, "values" => {["GET", "POST", "PUT", "PATCH", "DELETE"], "query"}, "json" => {["POST", "PUT", "PATCH", "DELETE"], "json"}, "cookie" => {nil, "header"}, "headers" => {nil, "header"}}

https://stackoverflow.com/a/16664376 https://tedboy.github.io/flask/generated/generated/flask.Request.html

REQUEST_PARAM_TYPE_MAP = {"query" => nil, "form" => ["POST", "PUT", "PATCH", "DELETE"], "json" => ["POST", "PUT", "PATCH", "DELETE"], "cookie" => nil, "header" => nil}

Instance Method Summary

Instance methods inherited from class Analyzer

analyze analyze, base_path : String base_path, logger : NoirLogger logger, result : Array(Endpoint) result, scope : String scope, url : String url

Constructor methods inherited from class Analyzer

new(options : Hash(Symbol, String)) new

Macros inherited from class Analyzer

define_getter_methods(names) define_getter_methods

Instance Method Detail

def analyze #

[View source]
def get_endpoints(route_path : String, extra_params : String, codeblock_lines : Array(String), prefix : String) #

[View source]
def get_filtered_params(method : String, params : Array(Param)) #

[View source]
def parse_function_or_class(content : String) #

[View source]