Il pacchetto protorpc.definition
fornisce le seguenti funzioni:
- define_enum(enum_descriptor, module_name)
-
Definisce una classe Enum per un descrittore.
Argomenti- enum_descriptor
- EnumDescriptor da utilizzare per creare la classe Enum.
- module_name
- Nome del modulo da assegnare alla nuova classe di descrittori.
Restituisce una nuova sottoclasse messages.Enum come descritto da
enum_descriptor
. - define_field(field_descriptor)
-
Definisce un'istanza di Field dal descrittore fornito.
Argomenti- field_descriptor
- Classe FieldDescriptor da utilizzare per creare l'istanza Field.
Restituisce una nuova istanza di campo come descritto da
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 di messaggio.
- module_name
- Il nome del modulo da assegnare alla nuova classe di descrittori.
Restituisce una nuova sottoclasse messages.Message come descritto in
message_descriptor
. - define_service(service_descriptor, module)
-
Definisce un nuovo proxy di servizio.
Argomenti- service_descriptor
- Classe ServiceDescriptor che descrive il servizio.
- module
- 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 fornito.
Se non viene fornito alcun modulo, viene creato un nuovo modulo con il nome impostato sul pacchetto del descrittore file. Se viene fornito un modulo, restituisce lo stesso modulo.
- import_file(file_descriptor, modules=None)
-
Importa un FileDescriptor in uno spazio del modulo. È simile a define_file(), tranne per il fatto che viene creato e aggiunto un nuovo modulo e tutti i moduli principali richiesti al parametro moduli o a sys.modules se non 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 un nuovo modulo se non vengono trovate corrispondenze. - import_file_set(file_set, modules=None)
-
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
, questo viene aggiornato con i contenuti di FileDescriptor.