Funzioni dei moduli di definizione

Il pacchetto protorpc.definition offre le seguenti funzioni:

define_enum(descriptor_enum, nome_modulo)

Definisce una classe Enum per un descrittore.

Argomenti
enum_descriptor
EnumDescriptor da usare per creare la classe Enum.
module_name
Nome del modulo che assegna alla nuova classe descrittore.

Restituisce una nuova sottoclasse messages.Enum come descritto da enum_descriptor.

define_field(field_descriptor)

Definisce un'istanza di campo dal descrittore fornito.

Argomenti
field_descriptor
Classe FieldDescriptor da utilizzare per creare l'istanza Field.

Restituisce una nuova istanza di campo come descritto in field_descriptor.

define_message(message_descriptor, module_name)

Definisce una classe Message dal descrittore fornito.

Argomenti
message_descriptor
MessageDescriptor da utilizzare per descrivere la classe dei messaggi.
module_name
Il nome del modulo da assegnare alla nuova classe descrittore.

Restituisce una nuova sottoclassemessages.Message come descritto da message_descriptor.

define_service(service_descriptor, module)

Definisce un nuovo proxy di servizio.

Argomenti
service_descriptor
Classe ServiceDescriptor che descrive il servizio.
modulo
Il modulo a cui aggiungere il servizio. I tipi di richiesta e risposta sono relativi a questo modulo.

Restituisce un proxy di classe in grado di comunicare con un server remoto.

define_file(file_descriptor, module=None)

Definisce un modulo dal descrittore file specificato.

Argomenti
file_descriptor
Istanza FileDescriptor da cui descrivere il modulo.
module=None
Modulo a cui aggiungere gli oggetti contenuti. Il nome del modulo sostituisce il valore in file_descriptor.package. Le definizioni vengono aggiunte al modulo esistente, se fornite.

Se non viene fornito alcun modulo, crea un nuovo modulo con il nome impostato sul pacchetto del descrittore del file. Se viene fornito un modulo, restituisce lo stesso modulo.

Funzioni di utilità

import_file(file_descriptor, modules=Nessuno)

Importa un FileDescriptor in uno spazio del modulo. Simile a define_file(), ad eccezione del fatto che un nuovo modulo e gli eventuali moduli principali richiesti vengono creati e aggiunti al parametro moduli oppure a sys.modules se non viene specificato.

Argomenti
file_descriptor
Istanza FileDescriptor da cui descrivere il modulo.
modulesmodules=None
Dizionario dei moduli da aggiornare. Verranno creati i moduli e i relativi elementi principali che non esistono. Se viene trovato un modulo esistente corrispondente a file_descriptor.package, questo viene aggiornato con i contenuti di FileDescriptor.

Restituisce le corrispondenze all'argomento modules o a un nuovo modulo se non vengono trovate corrispondenze.

import_file_set(file_set, modules=Nessuno)

Argomenti
file_set
Una stringa o un'istanza FileSet. Se è una stringa, import_file_set() apre il file e legge il FileSet serializzato. Se è un'istanza FileSet, importa le definizioni da questa istanza.
modules
Dizionario dei moduli da aggiornare. Verranno creati i moduli e i relativi elementi principali che non esistono. Se viene trovato un modulo esistente che corrisponde a file_descriptor.package, viene aggiornato con i contenuti di FileDescriptor.