Exemplo n.º 1
0
    return True


mappings = {
    LINE: {
        'properties': {
            'rust_function': QUALIFIED_LINE_NEEDLE,
            'rust_function_ref': QUALIFIED_LINE_NEEDLE,
            'rust_var': QUALIFIED_LINE_NEEDLE,
            'rust_var_ref': QUALIFIED_LINE_NEEDLE,
            'rust_type': QUALIFIED_LINE_NEEDLE,
            'rust_type_ref': QUALIFIED_LINE_NEEDLE,
            'rust_module': QUALIFIED_LINE_NEEDLE,
            'rust_module_ref': QUALIFIED_LINE_NEEDLE,
            'rust_module_alias_ref': QUALIFIED_LINE_NEEDLE,
            'rust_extern_ref': QUALIFIED_LINE_NEEDLE,
            'rust_module_use': QUALIFIED_LINE_NEEDLE,
            'rust_impl': QUALIFIED_LINE_NEEDLE,
            'rust_fn_impls': QUALIFIED_LINE_NEEDLE,
            'rust_bases': QUALIFIED_LINE_NEEDLE,
            'rust_derived': QUALIFIED_LINE_NEEDLE,
            'rust_callers': QUALIFIED_LINE_NEEDLE,
        }
    }
}

plugin = Plugin(filters=filters_from_namespace(filters.__dict__),
                tree_to_index=TreeToIndex,
                mappings=mappings,
                refs=refs_from_namespace(refs.__dict__))
Exemplo n.º 2
0
"""C and C++ analysis using a clang compiler plugin

This plugin handles structural analysis of C++ code by building the project
under clang while interposing a custom compiler plugin that dumps out
structural data to CSV files during compilation. This is then pulled into
elasticsearch as a post-processing phase.

"""
from dxr.plugins import Plugin, filters_from_namespace, refs_from_namespace
from dxr.plugins.clang import direct, filters, menus
from dxr.plugins.clang.indexers import TreeToIndex, mappings

plugin = Plugin(filters=filters_from_namespace(filters.__dict__),
                tree_to_index=TreeToIndex,
                mappings=mappings,
                badge_colors={'c': '#F4FAAA'},
                direct_searchers=direct.searchers,
                refs=refs_from_namespace(menus.__dict__))
Exemplo n.º 3
0
"""JS plugin: analyze Javascript files by building a symbol map on parse by
esprima.
"""

from dxr.plugins import Plugin, filters_from_namespace, refs_from_namespace
from dxr.filters import LINE
from dxr.indexers import QUALIFIED_LINE_NEEDLE
from dxr.plugins.js.indexers import TreeToIndex
from dxr.plugins.js.refs import PLUGIN_NAME
from dxr.plugins.js import refs, filters


mappings = {
    LINE: {
        'properties': {
            PLUGIN_NAME + '_prop': QUALIFIED_LINE_NEEDLE,
            PLUGIN_NAME + '_var': QUALIFIED_LINE_NEEDLE,
            PLUGIN_NAME + '_prop_ref': QUALIFIED_LINE_NEEDLE,
            PLUGIN_NAME + '_var_ref': QUALIFIED_LINE_NEEDLE
        }
    }
}


plugin = Plugin(
    tree_to_index=TreeToIndex,
    mappings=mappings,
    refs=refs_from_namespace(refs.__dict__),
    filters=filters_from_namespace(filters.__dict__),
)
Exemplo n.º 4
0
"""Python plugin, using the ast and tokenize standard library modules"""

from dxr.config import AbsPath
from dxr.plugins import filters_from_namespace, refs_from_namespace, Plugin
from dxr.plugins.python import filters, menus
from dxr.plugins.python.indexers import mappings, TreeToIndex


plugin = Plugin(
    filters=filters_from_namespace(filters.__dict__),
    tree_to_index=TreeToIndex,
    mappings=mappings,
    badge_colors={'py': '#ECE6FD'},
    refs=refs_from_namespace(menus.__dict__),
    config_schema = {
        'python_path': AbsPath
    }
)