1 /*[clinic input]
2 preserve
3 [clinic start generated code]*/
4
5 static PyObject *
6 mappingproxy_new_impl(PyTypeObject *type, PyObject *mapping);
7
8 static PyObject *
mappingproxy_new(PyTypeObject * type,PyObject * args,PyObject * kwargs)9 mappingproxy_new(PyTypeObject *type, PyObject *args, PyObject *kwargs)
10 {
11 PyObject *return_value = NULL;
12 static const char * const _keywords[] = {"mapping", NULL};
13 static _PyArg_Parser _parser = {"O:mappingproxy", _keywords, 0};
14 PyObject *mapping;
15
16 if (!_PyArg_ParseTupleAndKeywordsFast(args, kwargs, &_parser,
17 &mapping)) {
18 goto exit;
19 }
20 return_value = mappingproxy_new_impl(type, mapping);
21
22 exit:
23 return return_value;
24 }
25
26 PyDoc_STRVAR(property_init__doc__,
27 "property(fget=None, fset=None, fdel=None, doc=None)\n"
28 "--\n"
29 "\n"
30 "Property attribute.\n"
31 "\n"
32 " fget\n"
33 " function to be used for getting an attribute value\n"
34 " fset\n"
35 " function to be used for setting an attribute value\n"
36 " fdel\n"
37 " function to be used for del\'ing an attribute\n"
38 " doc\n"
39 " docstring\n"
40 "\n"
41 "Typical use is to define a managed attribute x:\n"
42 "\n"
43 "class C(object):\n"
44 " def getx(self): return self._x\n"
45 " def setx(self, value): self._x = value\n"
46 " def delx(self): del self._x\n"
47 " x = property(getx, setx, delx, \"I\'m the \'x\' property.\")\n"
48 "\n"
49 "Decorators make defining new properties or modifying existing ones easy:\n"
50 "\n"
51 "class C(object):\n"
52 " @property\n"
53 " def x(self):\n"
54 " \"I am the \'x\' property.\"\n"
55 " return self._x\n"
56 " @x.setter\n"
57 " def x(self, value):\n"
58 " self._x = value\n"
59 " @x.deleter\n"
60 " def x(self):\n"
61 " del self._x");
62
63 static int
64 property_init_impl(propertyobject *self, PyObject *fget, PyObject *fset,
65 PyObject *fdel, PyObject *doc);
66
67 static int
property_init(PyObject * self,PyObject * args,PyObject * kwargs)68 property_init(PyObject *self, PyObject *args, PyObject *kwargs)
69 {
70 int return_value = -1;
71 static const char * const _keywords[] = {"fget", "fset", "fdel", "doc", NULL};
72 static _PyArg_Parser _parser = {"|OOOO:property", _keywords, 0};
73 PyObject *fget = NULL;
74 PyObject *fset = NULL;
75 PyObject *fdel = NULL;
76 PyObject *doc = NULL;
77
78 if (!_PyArg_ParseTupleAndKeywordsFast(args, kwargs, &_parser,
79 &fget, &fset, &fdel, &doc)) {
80 goto exit;
81 }
82 return_value = property_init_impl((propertyobject *)self, fget, fset, fdel, doc);
83
84 exit:
85 return return_value;
86 }
87 /*[clinic end generated code: output=729021fa9cdc46be input=a9049054013a1b77]*/
88