mozpack.chrome 包

子模块

mozpack.chrome.flags 模块

class mozpack.chrome.flags.Flag(name)

基类:object

用于清单条目中标志的类,格式如下:

“flag”(与“flag=true”相同)“flag=yes|true|1” “flag=no|false|0”

add_definition(definition)

添加标志值定义。替换任何先前设置的值。

matches(value)

返回标志值是否与给定值匹配。这些值已规范化以进行比较。

class mozpack.chrome.flags.Flags(*flags)

基类:OrderedDict

用于处理单个清单条目上给定的标志定义集的类。

FLAGS = {'abi': <class 'mozpack.chrome.flags.StringFlag'>, 'application': <class 'mozpack.chrome.flags.StringFlag'>, 'appversion': <class 'mozpack.chrome.flags.VersionFlag'>, 'backgroundtask': <class 'mozpack.chrome.flags.StringFlag'>, 'contentaccessible': <class 'mozpack.chrome.flags.Flag'>, 'os': <class 'mozpack.chrome.flags.StringFlag'>, 'osversion': <class 'mozpack.chrome.flags.VersionFlag'>, 'platform': <class 'mozpack.chrome.flags.Flag'>, 'platformversion': <class 'mozpack.chrome.flags.VersionFlag'>, 'process': <class 'mozpack.chrome.flags.StringFlag'>, 'tablet': <class 'mozpack.chrome.flags.Flag'>, 'xpcnativewrappers': <class 'mozpack.chrome.flags.Flag'>}
RE = re.compile('([!<>=]+)')
match(**filter)
返回标志集是否与给定的过滤器集匹配。
flags = Flags(‘contentaccessible=yes’, ‘appversion>=3.5’,

‘application=foo’)

flags.match(application=’foo’) 返回 True flags.match(application=’foo’, appversion=’3.5’) 返回 True flags.match(application=’foo’, appversion=’3.0’) 返回 False

class mozpack.chrome.flags.StringFlag(name)

基类:object

用于清单条目中字符串标志的类,格式如下:

“flag=string” “flag!=string”

add_definition(definition)

添加字符串标志定义。

matches(value)

返回字符串标志定义中的一个是否与给定值匹配。例如,

flag = StringFlag(‘foo’) flag.add_definition(‘foo!=bar’) flag.matches(‘bar’) 返回 False flag.matches(‘qux’) 返回 True flag = StringFlag(‘foo’) flag.add_definition(‘foo=bar’) flag.add_definition(‘foo=baz’) flag.matches(‘bar’) 返回 True flag.matches(‘baz’) 返回 True flag.matches(‘qux’) 返回 False

class mozpack.chrome.flags.VersionFlag(name)

基类:object

用于清单条目中版本标志的类,格式如下:

“flag=version” “flag<=version” “flag<version” “flag>=version” “flag>version”

add_definition(definition)

添加版本标志定义。

matches(value)

返回版本标志定义中的一个是否与给定值匹配。例如,

flag = VersionFlag(‘foo’) flag.add_definition(‘foo>=1.0’) flag.matches(‘1.0’) 返回 True flag.matches(‘1.1’) 返回 True flag.matches(‘0.9’) 返回 False flag = VersionFlag(‘foo’) flag.add_definition(‘foo>=1.0’) flag.add_definition(‘foo<0.5’) flag.matches(‘0.4’) 返回 True flag.matches(‘1.0’) 返回 True flag.matches(‘0.6’) 返回 False

mozpack.chrome.manifest 模块

class mozpack.chrome.manifest.Manifest(base, relpath, *flags)

基类:ManifestEntryWithRelPath

“manifest” 条目的类。

manifest some/path/to/another.manifest

type = 'manifest'
class mozpack.chrome.manifest.ManifestBinaryComponent(base, relpath, *flags)

基类:ManifestEntryWithRelPath

“binary-component” 条目的类。

binary-component some/path/to/a/component.dll

type = 'binary-component'
class mozpack.chrome.manifest.ManifestCategory(base, category, name, value, *flags)

基类:ManifestEntry

“category” 条目的类。

category command-line-handler m-browser @mozilla.org/browser/clh;

type = 'category'
class mozpack.chrome.manifest.ManifestChrome(base, name, relpath, *flags)

基类:ManifestEntryWithRelPath

chrome 条目的抽象类。

property location
class mozpack.chrome.manifest.ManifestComponent(base, cid, file, *flags)

基类:ManifestEntryWithRelPath

“component” 条目的类。

component {b2bba4df-057d-41ea-b6b1-94a10a8ede68} foo.js

type = 'component'
class mozpack.chrome.manifest.ManifestContent(base, name, relpath, *flags)

基类:ManifestChrome

“content” 条目的类。

content global content/global/

allowed_flags = ['application', 'platformversion', 'os', 'osversion', 'abi', 'xpcnativewrappers', 'tablet', 'process', 'contentaccessible', 'backgroundtask', 'contentaccessible', 'platform']
type = 'content'
class mozpack.chrome.manifest.ManifestContract(base, contractID, cid, *flags)

基类:ManifestEntry

“contract” 条目的类。

contract @mozilla.org/foo;1 {b2bba4df-057d-41ea-b6b1-94a10a8ede68}

type = 'contract'
class mozpack.chrome.manifest.ManifestEntry(base, *flags)

基类:object

所有清单条目类型的基类。子类可以定义以下类或成员变量

  • localized:指示清单条目是否用于本地化数据。

  • type:清单条目类型(例如,“content global content/global/”中的“content”)

  • allowed_flags:给定清单条目类型允许定义的一组标志。

清单条目附加到一个基本路径,定义清单条目绑定到的位置,并用于查找条目中定义的相对路径。

allowed_flags = ['application', 'platformversion', 'os', 'osversion', 'abi', 'xpcnativewrappers', 'tablet', 'process', 'contentaccessible', 'backgroundtask']
localized = False
move(base)

返回一个具有不同基本路径的新清单条目。

rebase(base)

返回一个新的清单条目,其中条目中定义的所有相对路径相对于新的基本目录。基类没有定义相对路径,因此它等效于 move()。

serialize(*args)

序列化清单条目。

type = None
class mozpack.chrome.manifest.ManifestEntryWithRelPath(base, relpath, *flags)

基类:ManifestEntry

具有相对路径定义的抽象清单条目类型。

property path
rebase(base)

返回一个新的清单条目,其中条目中定义的所有相对路径相对于新的基本目录。

class mozpack.chrome.manifest.ManifestInterfaces(base, relpath, *flags)

基类:ManifestEntryWithRelPath

“interfaces”条目的类。

interfaces foo.xpt

type = 'interfaces'
class mozpack.chrome.manifest.ManifestLocale(base, name, id, relpath, *flags)

Bases: ManifestMultiContent

“locale”条目的类。

locale global en-US content/en-US/ locale global fr content/fr/

localized = True
type = 'locale'
class mozpack.chrome.manifest.ManifestMultiContent(base, name, id, relpath, *flags)

基类:ManifestChrome

具有多个定义的 Chrome 条目的抽象类。用于 locale 和 skin 条目。

type = None
class mozpack.chrome.manifest.ManifestOverlay(base, overloaded, overload, *flags)

Bases: ManifestOverload

“overlay”条目的类。

overlay chrome://global/content/viewSource.xul chrome://browser/content/viewSourceOverlay.xul

type = 'overlay'
class mozpack.chrome.manifest.ManifestOverload(base, overloaded, overload, *flags)

基类:ManifestEntry

定义某种重载的 Chrome 条目的抽象类。用于 overlay、override 或 style 条目。

type = None
class mozpack.chrome.manifest.ManifestOverride(base, overloaded, overload, *flags)

Bases: ManifestOverload

“override”条目的类。

override chrome://global/locale/netError.dtd chrome://browser/locale/netError.dtd

type = 'override'
class mozpack.chrome.manifest.ManifestResource(base, name, target, *flags)

基类:ManifestEntry

“resource”条目的类。

resource gre-resources toolkit/res/ resource services-sync resource://gre/modules/services-sync/

目标可以是相对路径或资源或 chrome url。

rebase(base)

返回一个新的清单条目,其中条目中定义的所有相对路径相对于新的基本目录。基类没有定义相对路径,因此它等效于 move()。

type = 'resource'
class mozpack.chrome.manifest.ManifestSkin(base, name, id, relpath, *flags)

Bases: ManifestMultiContent

“skin”条目的类。

skin global classic/1.0 content/skin/classic/

type = 'skin'
class mozpack.chrome.manifest.ManifestStyle(base, overloaded, overload, *flags)

Bases: ManifestOverload

“style”条目的类。

style chrome://global/content/viewSource.xul chrome://browser/skin/

type = 'style'
mozpack.chrome.manifest.is_manifest(path)

返回给定路径是否为清单文件的路径。

mozpack.chrome.manifest.parse_manifest(root, path, fileobj=None)

解析清单文件。

mozpack.chrome.manifest.parse_manifest_line(base, line)

使用给定的基本目录解析清单文件中的行,并返回相应的 ManifestEntry 实例。

模块内容