Page Menu
Home
Software Heritage
Search
Configure Global Search
Log In
Files
F9342067
converters.py
No One
Temporary
Actions
Download File
Edit File
Delete File
View Transforms
Subscribe
Mute Notifications
Award Token
Flag For Later
Size
4 KB
Subscribers
None
converters.py
View Options
# Copyright (C) 2015-2017 The Software Heritage developers
# See the AUTHORS file at the top-level directory of this distribution
# License: GNU General Public License version 3, or any later version
# See top-level LICENSE file for more information
def
ctags_to_db
(
ctags
):
"""Convert a ctags entry into a ready ctags entry.
Args:
ctags (dict): ctags entry with the following keys:
- id (bytes): content's identifier
- tool_id (int): tool id used to compute ctags
- ctags ([dict]): List of dictionary with the following keys:
- name (str): symbol's name
- kind (str): symbol's kind
- line (int): symbol's line in the content
- language (str): language
Returns:
list: list of ctags entries as dicts with the following keys:
- id (bytes): content's identifier
- name (str): symbol's name
- kind (str): symbol's kind
- language (str): language for that content
- tool_id (int): tool id used to compute ctags
"""
id
=
ctags
[
"id"
]
tool_id
=
ctags
[
"indexer_configuration_id"
]
for
ctag
in
ctags
[
"ctags"
]:
yield
{
"id"
:
id
,
"name"
:
ctag
[
"name"
],
"kind"
:
ctag
[
"kind"
],
"line"
:
ctag
[
"line"
],
"lang"
:
ctag
[
"lang"
],
"indexer_configuration_id"
:
tool_id
,
}
def
db_to_ctags
(
ctag
):
"""Convert a ctags entry into a ready ctags entry.
Args:
ctags (dict): ctags entry with the following keys:
- id (bytes): content's identifier
- ctags ([dict]): List of dictionary with the following keys:
- name (str): symbol's name
- kind (str): symbol's kind
- line (int): symbol's line in the content
- language (str): language
Returns:
list: list of ctags ready entry (dict with the following keys):
- id (bytes): content's identifier
- name (str): symbol's name
- kind (str): symbol's kind
- language (str): language for that content
- tool (dict): tool used to compute the ctags
"""
return
{
"id"
:
ctag
[
"id"
],
"name"
:
ctag
[
"name"
],
"kind"
:
ctag
[
"kind"
],
"line"
:
ctag
[
"line"
],
"lang"
:
ctag
[
"lang"
],
"tool"
:
{
"id"
:
ctag
[
"tool_id"
],
"name"
:
ctag
[
"tool_name"
],
"version"
:
ctag
[
"tool_version"
],
"configuration"
:
ctag
[
"tool_configuration"
],
},
}
def
db_to_mimetype
(
mimetype
):
"""Convert a ctags entry into a ready ctags output.
"""
return
{
"id"
:
mimetype
[
"id"
],
"encoding"
:
mimetype
[
"encoding"
],
"mimetype"
:
mimetype
[
"mimetype"
],
"tool"
:
{
"id"
:
mimetype
[
"tool_id"
],
"name"
:
mimetype
[
"tool_name"
],
"version"
:
mimetype
[
"tool_version"
],
"configuration"
:
mimetype
[
"tool_configuration"
],
},
}
def
db_to_language
(
language
):
"""Convert a language entry into a ready language output.
"""
return
{
"id"
:
language
[
"id"
],
"lang"
:
language
[
"lang"
],
"tool"
:
{
"id"
:
language
[
"tool_id"
],
"name"
:
language
[
"tool_name"
],
"version"
:
language
[
"tool_version"
],
"configuration"
:
language
[
"tool_configuration"
],
},
}
def
db_to_metadata
(
metadata
):
"""Convert a metadata entry into a ready metadata output.
"""
metadata
[
"tool"
]
=
{
"id"
:
metadata
[
"tool_id"
],
"name"
:
metadata
[
"tool_name"
],
"version"
:
metadata
[
"tool_version"
],
"configuration"
:
metadata
[
"tool_configuration"
],
}
del
metadata
[
"tool_id"
],
metadata
[
"tool_configuration"
]
del
metadata
[
"tool_version"
],
metadata
[
"tool_name"
]
return
metadata
def
db_to_fossology_license
(
license
):
return
{
"id"
:
license
[
"id"
],
"license"
:
license
[
"license"
],
"tool"
:
{
"id"
:
license
[
"tool_id"
],
"name"
:
license
[
"tool_name"
],
"version"
:
license
[
"tool_version"
],
"configuration"
:
license
[
"tool_configuration"
],
},
}
File Metadata
Details
Attached
Mime Type
text/x-python
Expires
Fri, Jul 4, 12:28 PM (2 w, 3 d ago)
Storage Engine
blob
Storage Format
Raw Data
Storage Handle
3290508
Attached To
rDCIDX Metadata indexer
Event Timeline
Log In to Comment