-
-
Notifications
You must be signed in to change notification settings - Fork 91
Expand file tree
/
Copy pathcapsule.po
More file actions
232 lines (203 loc) · 10.7 KB
/
capsule.po
File metadata and controls
232 lines (203 loc) · 10.7 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
# SOME DESCRIPTIVE TITLE.
# Copyright (C) 2001-2021, Python Software Foundation
# This file is distributed under the same license as the Python package.
# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
#
# Translators:
# Shengjing Zhu <zsj950618@gmail.com>, 2020
# RSNOW <renhuanlzy@163.com>, 2020
# Trim21 <i@trim21.me>, 2020
# Freesand Leo <yuqinju@163.com>, 2020
#
#, fuzzy
msgid ""
msgstr ""
"Project-Id-Version: Python 3.8\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2021-01-01 16:06+0000\n"
"PO-Revision-Date: 2020-05-30 11:47+0000\n"
"Last-Translator: Freesand Leo <yuqinju@163.com>, 2020\n"
"Language-Team: Chinese (China) (https://www.transifex.com/python-doc/teams/5390/zh_CN/)\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Language: zh_CN\n"
"Plural-Forms: nplurals=1; plural=0;\n"
#: ../../c-api/capsule.rst:6
msgid "Capsules"
msgstr "胶囊"
#: ../../c-api/capsule.rst:10
msgid ""
"Refer to :ref:`using-capsules` for more information on using these objects."
msgstr "有关使用这些对象的更多信息请参阅 :ref:`using-capsules`。"
#: ../../c-api/capsule.rst:17
msgid ""
"This subtype of :c:type:`PyObject` represents an opaque value, useful for C "
"extension modules who need to pass an opaque value (as a :c:type:`void*` "
"pointer) through Python code to other C code. It is often used to make a C "
"function pointer defined in one module available to other modules, so the "
"regular import mechanism can be used to access C APIs defined in dynamically"
" loaded modules."
msgstr ""
"这个 :c:type:`PyObject` 的子类型代表一个隐藏的值,适用于需要将隐藏值(作为 :c:type:`void*` 指针)通过 Python"
" 代码传递到其他 C 代码的 C 扩展模块。 它常常被用来让在一个模块中定义的 C "
"函数指针在其他模块中可用,这样就可以使用常规导入机制来访问在动态加载的模块中定义的 C API。"
#: ../../c-api/capsule.rst:27
msgid "The type of a destructor callback for a capsule. Defined as::"
msgstr "这种类型的一个析构器返回一个胶囊,定义如下:"
#: ../../c-api/capsule.rst:31
msgid ""
"See :c:func:`PyCapsule_New` for the semantics of PyCapsule_Destructor "
"callbacks."
msgstr "参阅 :c:func:`PyCapsule_New` 来获取 PyCapsule_Destructor 返回值的语义。"
#: ../../c-api/capsule.rst:37
msgid "Return true if its argument is a :c:type:`PyCapsule`."
msgstr "如果参数是一个 :c:type:`PyCapsule` 则返回 True"
#: ../../c-api/capsule.rst:42
msgid ""
"Create a :c:type:`PyCapsule` encapsulating the *pointer*. The *pointer* "
"argument may not be ``NULL``."
msgstr "创建一个封装了 *pointer* 的 :c:type:`PyCapsule`。 *pointer* 参考可以不为 ``NULL``。"
#: ../../c-api/capsule.rst:45
msgid "On failure, set an exception and return ``NULL``."
msgstr "在失败时设置一个异常并返回 ``NULL``。"
#: ../../c-api/capsule.rst:47
msgid ""
"The *name* string may either be ``NULL`` or a pointer to a valid C string. "
"If non-``NULL``, this string must outlive the capsule. (Though it is "
"permitted to free it inside the *destructor*.)"
msgstr ""
"字符串 *name* 可以是 ``NULL`` 或是一个指向有效的 C 字符串的指针。 如果不为 ``NULL``,则此字符串必须比 capsule "
"长(虽然也允许在 *destructor* 中释放它。)"
#: ../../c-api/capsule.rst:51
msgid ""
"If the *destructor* argument is not ``NULL``, it will be called with the "
"capsule as its argument when it is destroyed."
msgstr "如果 *destructor* 参数不为 ``NULL``,则当它被销毁时将附带 capsule 作为参数来调用。"
#: ../../c-api/capsule.rst:54
msgid ""
"If this capsule will be stored as an attribute of a module, the *name* "
"should be specified as ``modulename.attributename``. This will enable other"
" modules to import the capsule using :c:func:`PyCapsule_Import`."
msgstr ""
"如果此 capsule 将被保存为一个模块的属性,则 *name* 应当被指定为 ``modulename.attributename``。 "
"这将允许其他模块使用 :c:func:`PyCapsule_Import` 来导入此 capsule。"
#: ../../c-api/capsule.rst:61
msgid ""
"Retrieve the *pointer* stored in the capsule. On failure, set an exception "
"and return ``NULL``."
msgstr "提取保存在 capsule 中的 *pointer*。 在失败时设置一个异常并返回 ``NULL``。"
#: ../../c-api/capsule.rst:64
msgid ""
"The *name* parameter must compare exactly to the name stored in the capsule."
" If the name stored in the capsule is ``NULL``, the *name* passed in must "
"also be ``NULL``. Python uses the C function :c:func:`strcmp` to compare "
"capsule names."
msgstr ""
"*name* 形参必须与保存在 capsule 中的名称进行精确比较。 如果保存在 capsule 中的名称为 ``NULL``,则传入的 *name*"
" 也必须为 ``NULL``。 Python 会使用 C 函数 :c:func:`strcmp` 来比较 capsule 名称。"
#: ../../c-api/capsule.rst:72
msgid ""
"Return the current destructor stored in the capsule. On failure, set an "
"exception and return ``NULL``."
msgstr "返回保存为 capsule 中的当前析构器。 在失败时设置一个异常并返回 ``NULL``。"
#: ../../c-api/capsule.rst:75
msgid ""
"It is legal for a capsule to have a ``NULL`` destructor. This makes a "
"``NULL`` return code somewhat ambiguous; use :c:func:`PyCapsule_IsValid` or "
":c:func:`PyErr_Occurred` to disambiguate."
msgstr ""
"具有 ``NULL`` 析构器是合法的。 这会使得 ``NULL`` 返回值有些歧义;请使用 :c:func:`PyCapsule_IsValid` 或"
" :c:func:`PyErr_Occurred` 来消除歧义。"
#: ../../c-api/capsule.rst:82
msgid ""
"Return the current context stored in the capsule. On failure, set an "
"exception and return ``NULL``."
msgstr "返回保存在 capsule 中的当前上下文。 在失败时设置一个异常并返回 ``NULL``。"
#: ../../c-api/capsule.rst:85
msgid ""
"It is legal for a capsule to have a ``NULL`` context. This makes a ``NULL``"
" return code somewhat ambiguous; use :c:func:`PyCapsule_IsValid` or "
":c:func:`PyErr_Occurred` to disambiguate."
msgstr ""
"capsule 具有 ``NULL`` 上下文是全法的。 这会使得 ``NULL`` 返回码有些歧义;请使用 "
":c:func:`PyCapsule_IsValid` 或 :c:func:`PyErr_Occurred` 来消除歧义。"
#: ../../c-api/capsule.rst:92
msgid ""
"Return the current name stored in the capsule. On failure, set an exception"
" and return ``NULL``."
msgstr "返回保存在 capsule 中的当前名称。 在失败时设置一个异常并返回 ``NULL``。"
#: ../../c-api/capsule.rst:95
msgid ""
"It is legal for a capsule to have a ``NULL`` name. This makes a ``NULL`` "
"return code somewhat ambiguous; use :c:func:`PyCapsule_IsValid` or "
":c:func:`PyErr_Occurred` to disambiguate."
msgstr ""
"capsule 具有 ``NULL`` 名称是合法的。 这会使得 ``NULL`` 返回码有些歧义;请使用 "
":c:func:`PyCapsule_IsValid` 或 :c:func:`PyErr_Occurred` 来消除歧义。"
#: ../../c-api/capsule.rst:102
msgid ""
"Import a pointer to a C object from a capsule attribute in a module. The "
"*name* parameter should specify the full name to the attribute, as in "
"``module.attribute``. The *name* stored in the capsule must match this "
"string exactly. If *no_block* is true, import the module without blocking "
"(using :c:func:`PyImport_ImportModuleNoBlock`). If *no_block* is false, "
"import the module conventionally (using :c:func:`PyImport_ImportModule`)."
msgstr ""
"从一个模块的 capsule 属性导入指向 C 对象的指针。 *name* 形参应当指定属性的完整名称,与 ``module.attribute`` "
"中的一致。 保存在 capsule 中的 *name* 必须完全匹配此字符串。 如果 *no_block* 为真值,则以无阻塞模式导入模块 (使用 "
":c:func:`PyImport_ImportModuleNoBlock`)。 如果 *no_block* 为假值,则以传统模式导入模块 (使用 "
":c:func:`PyImport_ImportModule`)。"
#: ../../c-api/capsule.rst:109
msgid ""
"Return the capsule's internal *pointer* on success. On failure, set an "
"exception and return ``NULL``."
msgstr "成功时返回 capsule 的内部 *指针*。 在失败时设置一个异常并返回 ``NULL``。"
#: ../../c-api/capsule.rst:115
msgid ""
"Determines whether or not *capsule* is a valid capsule. A valid capsule is "
"non-``NULL``, passes :c:func:`PyCapsule_CheckExact`, has a non-``NULL`` "
"pointer stored in it, and its internal name matches the *name* parameter. "
"(See :c:func:`PyCapsule_GetPointer` for information on how capsule names are"
" compared.)"
msgstr ""
"确定 *capsule* 是否是一个有效的。 有效的 capsule 必须不为 ``NULL``,传递 "
":c:func:`PyCapsule_CheckExact`,在其中存储一个不为 ``NULL`` 的指针,并且其内部名称与 *name* 形参相匹配。"
" (请参阅 :c:func:`PyCapsule_GetPointer` 了解如何对 capsule 名称进行比较的有关信息。)"
#: ../../c-api/capsule.rst:121
msgid ""
"In other words, if :c:func:`PyCapsule_IsValid` returns a true value, calls "
"to any of the accessors (any function starting with :c:func:`PyCapsule_Get`)"
" are guaranteed to succeed."
msgstr ""
"换句话说,如果 :c:func:`PyCapsule_IsValid` 返回真值,则任何对访问器(以 :c:func:`PyCapsule_Get` "
"开头的任何函数)的调用都保证会成功。"
#: ../../c-api/capsule.rst:125
msgid ""
"Return a nonzero value if the object is valid and matches the name passed "
"in. Return ``0`` otherwise. This function will not fail."
msgstr "如果对象有效并且匹配传入的名称则返回非零值。 否则返回 ``0``。 此函数一定不会失败。"
#: ../../c-api/capsule.rst:131
msgid "Set the context pointer inside *capsule* to *context*."
msgstr "将 *capsule* 内部的上下文指针设为 *context*。"
#: ../../c-api/capsule.rst:133 ../../c-api/capsule.rst:140
#: ../../c-api/capsule.rst:149 ../../c-api/capsule.rst:157
msgid ""
"Return ``0`` on success. Return nonzero and set an exception on failure."
msgstr "成功时返回 ``0``。 失败时返回非零值并设置一个异常。"
#: ../../c-api/capsule.rst:138
msgid "Set the destructor inside *capsule* to *destructor*."
msgstr "将 *capsule* 内部的析构器设为 *destructor*。"
#: ../../c-api/capsule.rst:145
msgid ""
"Set the name inside *capsule* to *name*. If non-``NULL``, the name must "
"outlive the capsule. If the previous *name* stored in the capsule was not "
"``NULL``, no attempt is made to free it."
msgstr ""
"将 *capsule* 内部的名称设为 *name*。 如果不为 ``NULL``,则名称的存在期必须比 capsule 更长。 如果之前保存在 "
"capsule 中的 *name* 不为 ``NULL``,则不会尝试释放它。"
#: ../../c-api/capsule.rst:154
msgid ""
"Set the void pointer inside *capsule* to *pointer*. The pointer may not be "
"``NULL``."
msgstr "将 *capsule* 内部的空指针设为 *pointer*。 指针不可为 ``NULL``。"