Skip to main content

bitbake 食谱的替代解析器

项目描述

oelint解析器

构建状态 PyPI 版本 蟒蛇版本 下载

bitbake 食谱的替代解析器

API 文档

在此处查找完整的 API 文档

例子

from oelint_parser.cls_stash import Stash

# create an stash object
_stash = Stash()

# add any bitbake like file
_stash.AddFile("/some/file")

# Resolves proper cross file dependencies
_stash.Finalize()

# Use _stash.GetItemsFor() method to filter the stash

从文件中获取变量

要从 stash 对象中获取变量,请执行

from oelint_parser.cls_item import Variable

# get all variables of the name PV from all files
for x in _stash.GetItemsFor(attribute=Variable.ATTR_VAR, attributeValue="PV"):
    print(x)

这将返回原始对象表示

展开原始变量

from oelint_parser.cls_item import Variable
from oelint_parser.helper_files import expand_term

# get all variables of the name PV from all files
for x in _stash.GetItemsFor(attribute=Variable.ATTR_VAR, attributeValue="PV"):
    # raw unexpanded variable
    print(x.VarValue)
    # raw unexpanded variable without quotes
    print(x.VarValueStripped)
    # expanded variable
    print(expand_term(stash, "/some/file", x.VarValueStripped))
    # single items from a list
    print(x.get_items())
    # expanded single items from a list
    print([expand_term(stash, "/some/file", y) for y in x.get_items()])

使用常量

对于这个库,需要一些基本的常量信息集,例如基本的包定义、已知的机器和函数。如果您有其他信息要添加/删除/修改,这些可以很容易地修改。

用户无法访问实际的数据库,但oelint_parse.constants.CONSTANT类中确实存在一些方法。每个方法都接受具有相同键映射的字典,如下所示(多级路径显示为 JSON 指针)

钥匙 类型 描述 获取信息
功能/已知 列表 已知函数 oelint_parse.constants.CONSTANT.FunctionsKnown
功能/顺序 列表 核心功能的首选顺序 oelint_parse.constants.CONSTANT.FunctionsOrder
图像/已知类 列表 已知在图像中使用的 bbclasses oelint_parse.constants.CONSTANT.ImagesClasses
图像/已知变量 列表 已知在图像中使用的变量 oelint_parse.constants.CONSTANT.ImagesVariables
替代品/发行版 列表 已知发行版覆盖 oelint_parse.constants.CONSTANT.DistrosKnown
替代品/机器 列表 已知机器覆盖 oelint_parse.constants.CONSTANT.MachinesKnown
替换/镜子 听写 已知的镜子 oelint_parse.constants.CONSTANT.MirrorsKnown
变量/已知 列表 已知变量 oelint_parse.constants.CONSTANT.VariablesKnown
变量/强制 列表 配方强制变量 oelint_parse.constants.CONSTANT.VariablesMandatory
变量/顺序 列表 变量的首选顺序 oelint_parse.constants.CONSTANT.VariablesOrder
变量/受保护 列表 不能在配方中使用的变量 oelint_parse.constants.CONSTANT.VariablesProtected
变量/保护附加 列表 不能在 bbappends 中使用的变量 oelint_parse.constants.CONSTANT.VariablesProtectedAppend
变量/建议 列表 配方中的建议变量 oelint_parse.constants.CONSTANT.VariablesSuggested
套/基地 听写 始终用于值扩展的基本变量集 oelint_parse.constants.CONSTANT.SetsBase

向后兼容规则/常量文件

最初提供对规则常量文件的支持是由两种新方法提供的

  • oelint_parse.constants.CONSTANT.AddFromRuleFile
  • oelint_parse.constants.CONSTANT.AddFromConstantFile

注意这些接口被认为是遗留接口,将在未来的某个时候被删除

项目详情


下载文件

下载适用于您平台的文件。如果您不确定要选择哪个,请了解有关安装包的更多信息。

源分布

oelint_parser-2.8.1.tar.gz (28.7 kB 查看哈希)

已上传 source

内置分布

oelint_parser-2.8.1-py2.py3-none-any.whl (29.3 kB 查看哈希

已上传 py2 py3