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)¶
-
- “manifest” 条目的类。
manifest some/path/to/another.manifest
- type = 'manifest'¶
- class mozpack.chrome.manifest.ManifestBinaryComponent(base, relpath, *flags)¶
-
- “binary-component” 条目的类。
binary-component some/path/to/a/component.dll
- type = 'binary-component'¶
- class mozpack.chrome.manifest.ManifestCategory(base, category, name, value, *flags)¶
-
- “category” 条目的类。
category command-line-handler m-browser @mozilla.org/browser/clh;
- type = 'category'¶
- class mozpack.chrome.manifest.ManifestChrome(base, name, relpath, *flags)¶
-
chrome 条目的抽象类。
- property location¶
- class mozpack.chrome.manifest.ManifestComponent(base, cid, file, *flags)¶
-
- “component” 条目的类。
component {b2bba4df-057d-41ea-b6b1-94a10a8ede68} foo.js
- type = 'component'¶
- class mozpack.chrome.manifest.ManifestContent(base, name, relpath, *flags)¶
-
- “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)¶
-
- “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)¶
-
具有相对路径定义的抽象清单条目类型。
- property path¶
- rebase(base)¶
返回一个新的清单条目,其中条目中定义的所有相对路径相对于新的基本目录。
- class mozpack.chrome.manifest.ManifestInterfaces(base, relpath, *flags)¶
-
- “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)¶
-
具有多个定义的 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)¶
-
定义某种重载的 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)¶
-
- “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 实例。