rma-analyzer 0.19.0

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

pub static KOTLIN_SEMANTICS: LanguageSemantics = LanguageSemantics {
    language: "kotlin",

    function_def_kinds: &[
        "function_declaration",
        "anonymous_function",
        "lambda_literal",
    ],
    if_kinds: &["if_expression"],
    loop_kinds: &["for_statement", "while_statement", "do_while_statement"],
    variable_declaration_kinds: &["property_declaration"],
    assignment_kinds: &["assignment"],
    augmented_assignment_kinds: &["assignment"],
    return_kinds: &["jump_expression"],
    call_kinds: &["call_expression"],
    try_catch_kinds: &["try_expression"],
    throw_kinds: &["jump_expression"],
    string_literal_kinds: &["line_string_literal", "multi_line_string_literal"],
    numeric_literal_kinds: &["integer_literal", "long_literal", "real_literal"],
    boolean_literal_kinds: &["boolean_literal"],
    null_literal_kinds: &["null_literal"],
    parameter_kinds: &["parameter", "function_value_parameter"],
    class_kinds: &[
        "class_declaration",
        "object_declaration",
        "companion_object",
    ],
    import_kinds: &["import_header"],
    block_scope_kinds: &["statements"],
    break_kinds: &["jump_expression"],
    continue_kinds: &["jump_expression"],
    switch_kinds: &["when_expression"],
    case_kinds: &["when_entry"],
    member_access_kinds: &["navigation_expression", "indexing_expression"],
    binary_expression_kinds: &[
        "comparison_expression",
        "equality_expression",
        "additive_expression",
        "multiplicative_expression",
    ],
    identifier_kinds: &["simple_identifier"],
    unsafe_block_kinds: &[],
    defer_kinds: &[],
    spawn_kinds: &[],

    condition_field: "condition",
    consequence_field: "consequence",
    alternative_field: "alternative",
    body_field: "body",
    initializer_field: "value",
    left_field: "left",
    right_field: "right",
    name_field: "name",
    arguments_field: "value_arguments",
    value_field: "value",
    operator_field: "operator",
    object_field: "object",
    property_field: "name",
    function_field: "function",
    parameters_field: "function_value_parameters",
    return_type_field: "type",
    type_field: "type",
    handler_field: "catch_block",
    finalizer_field: "finally_block",
};