diff options
author | Cyrille Bagard <nocbos@gmail.com> | 2019-05-12 22:09:53 (GMT) |
---|---|---|
committer | Cyrille Bagard <nocbos@gmail.com> | 2019-05-12 22:09:53 (GMT) |
commit | 00e93226e72bdb18853580f553e32df111422936 (patch) | |
tree | 9c346903d4506cae2df19b9314cf307c783c0cb3 /plugins/pychrysalide/core | |
parent | e44ffc323c8a9d4b446baba6e0b131107312fa84 (diff) |
Simplified the way processors are registered.
Diffstat (limited to 'plugins/pychrysalide/core')
-rw-r--r-- | plugins/pychrysalide/core/processors.c | 63 |
1 files changed, 7 insertions, 56 deletions
diff --git a/plugins/pychrysalide/core/processors.c b/plugins/pychrysalide/core/processors.c index 56498f3..47e4643 100644 --- a/plugins/pychrysalide/core/processors.c +++ b/plugins/pychrysalide/core/processors.c @@ -43,11 +43,8 @@ /* Enregistre un processeur pour une architecture donnée. */ static PyObject *py_processors_register_type(PyObject *, PyObject *); -/* Fournit le nom humain de l'architecture visée. */ -static PyObject *py_processors_get_description(PyObject *, PyObject *); - /* Fournit le processeur d'architecture correspondant à un nom. */ -static PyObject *py_processors_get_for_name(PyObject *, PyObject *); +static PyObject *py_processors_get_for_key(PyObject *, PyObject *); @@ -67,8 +64,6 @@ static PyObject *py_processors_get_for_name(PyObject *, PyObject *); static PyObject *py_processors_register_type(PyObject *self, PyObject *args) { PyObject *result; /* Bilan à retourner */ - const char *name; /* Nom technique de processeur */ - const char *desc; /* description humaine liée */ PyObject *type; /* Type d'une instance future */ int ret; /* Bilan de lecture des args. */ PyObject *new_args; /* Nouveaux arguments épurés */ @@ -77,7 +72,7 @@ static PyObject *py_processors_register_type(PyObject *self, PyObject *args) GType instance; /* Type pour futures instances */ bool status; /* Bilan d'un enregistrement */ - ret = PyArg_ParseTuple(args, "ssO!", &name, &desc, &PyType_Type, &type); + ret = PyArg_ParseTuple(args, "O!", &PyType_Type, &type); if (!ret) return NULL; ret = PyObject_IsSubclass(type, (PyObject *)get_python_arch_processor_type());; @@ -112,7 +107,7 @@ static PyObject *py_processors_register_type(PyObject *self, PyObject *args) Py_DECREF(dummy); - status = register_processor_type(name, desc, instance); + status = register_processor_type(instance); result = status ? Py_True : Py_False; Py_INCREF(result); @@ -127,45 +122,6 @@ static PyObject *py_processors_register_type(PyObject *self, PyObject *args) * Paramètres : self = objet Python concerné par l'appel. * * args = arguments fournis à l'appel. * * * -* Description : Fournit le nom humain de l'architecture visée. * -* * -* Retour : Désignation humaine trouvée ou NULL. * -* * -* Remarques : - * -* * -******************************************************************************/ - -static PyObject *py_processors_get_description(PyObject *self, PyObject *args) -{ - PyObject *result; /* Bilan à retourner */ - const char *name; /* Nom technique de processeur */ - int ret; /* Bilan de lecture des args. */ - const char *desc; /* Description humaine obtenue */ - - ret = PyArg_ParseTuple(args, "s", &name); - if (!ret) return NULL; - - desc = get_arch_processor_description(name); - - if (desc != NULL) - result = PyUnicode_FromString(desc); - - else - { - result = Py_None; - Py_INCREF(result); - } - - return result; - -} - - -/****************************************************************************** -* * -* Paramètres : self = objet Python concerné par l'appel. * -* args = arguments fournis à l'appel. * -* * * Description : Fournit le processeur d'architecture correspondant à un nom. * * * * Retour : Processeur d'architecture trouvé. * @@ -174,7 +130,7 @@ static PyObject *py_processors_get_description(PyObject *self, PyObject *args) * * ******************************************************************************/ -static PyObject *py_processors_get_for_name(PyObject *self, PyObject *args) +static PyObject *py_processors_get_for_key(PyObject *self, PyObject *args) { PyObject *result; /* Bilan à retourner */ const char *name; /* Nom technique de processeur */ @@ -184,7 +140,7 @@ static PyObject *py_processors_get_for_name(PyObject *self, PyObject *args) ret = PyArg_ParseTuple(args, "s", &name); if (!ret) return NULL; - proc = get_arch_processor_for_name(name); + proc = get_arch_processor_for_key(name); if (proc != NULL) { @@ -226,14 +182,9 @@ bool populate_core_module_with_processors(void) "register_processor(name, desc, cls, /)\n--\n\nRegister an an architecture processor by its name, description and class type." }, { - "get_processor_description", py_processors_get_description, - METH_VARARGS, - "get_processor_description(name, /)\n--\n\nProvide the description of a given architecture processor." - }, - { - "get_processor_for_name", py_processors_get_for_name, + "get_processor_for_key", py_processors_get_for_key, METH_VARARGS, - "get_processor_for_name(name, /)\n--\n\nProvide an instance of an architecture processor for a given name." + "get_processor_for_key(name, /)\n--\n\nProvide an instance of an architecture processor for a given name." }, { NULL } |