rma-analyzer 0.19.0

Code analysis and security scanning for Rust Monorepo Analyzer
Documentation
use super::LanguageSemantics;

pub static OCAML_SEMANTICS: LanguageSemantics = LanguageSemantics {
    language: "ocaml",

    function_def_kinds: &["let_binding", "value_definition"],
    if_kinds: &["if_expression"],
    loop_kinds: &["for_expression", "while_expression"],
    variable_declaration_kinds: &["let_binding"],
    assignment_kinds: &["set_expression"],
    augmented_assignment_kinds: &[],
    return_kinds: &[],
    call_kinds: &["application_expression"],
    try_catch_kinds: &["try_expression"],
    throw_kinds: &["raise_expression"],
    string_literal_kinds: &["string", "character"],
    numeric_literal_kinds: &["number"],
    boolean_literal_kinds: &["boolean"],
    null_literal_kinds: &[],
    parameter_kinds: &["parameter"],
    class_kinds: &["class_definition", "module_definition", "type_definition"],
    import_kinds: &["open_module"],
    block_scope_kinds: &["let_expression", "begin_expression"],
    break_kinds: &[],
    continue_kinds: &[],
    switch_kinds: &["match_expression"],
    case_kinds: &["match_case"],
    member_access_kinds: &["field_get_expression", "record_access"],
    binary_expression_kinds: &["infix_expression"],
    identifier_kinds: &["value_name", "value_path"],
    unsafe_block_kinds: &[],
    defer_kinds: &[],
    spawn_kinds: &[],

    condition_field: "condition",
    consequence_field: "consequence",
    alternative_field: "alternative",
    body_field: "body",
    initializer_field: "body",
    left_field: "left",
    right_field: "right",
    name_field: "name",
    arguments_field: "argument",
    value_field: "body",
    operator_field: "operator",
    object_field: "record",
    property_field: "field",
    function_field: "function",
    parameters_field: "parameter",
    return_type_field: "",
    type_field: "type",
    handler_field: "handler",
    finalizer_field: "",
};