__future__ � un modulo reale, e si propone tre obiettivi:
Ogni dichiarazione in __future__.py � nella forma:
FeatureName = "_Feature(" OptionalRelease "," MandatoryRelease ","
CompilerFlag ")"
dove, normalmente, OptionalRelease � minore di
MandatoryRelease, ed entrambe sono composte da tuple a cinque
elementi, nella stessa forma di sys.version_info:
(PY_MAJOR_VERSION, # il numero 2 in 2.1.0a3; un intero
PY_MINOR_VERSION, # il numero 1; un intero
PY_MICRO_VERSION, # il numero 0; un intero
PY_RELEASE_LEVEL, # "alpha", "beta", "candidate" o "final"; stringa
PY_RELEASE_SERIAL # il numero 3; un intero
)
OptionalRelease registra la prima versione in cui la caratteristica introdotta � stata accettata.
Nel caso di una MandatoryRelease che non sia stata ancora rilasciata, MandatoryRelease predice la versione in cui la nuova caratteristica diverr� parte del linguaggio.
Altrimenti MandatoryRelease registra il momento in cui la nuova caratteristica � stata introdotta come facente parte del linguaggio; nelle versioni in questione o in quelle successive, i moduli non necessitano pi� di un'istruzione future per utilizzare la nuova caratteristica, ma possono continuare ad usarla nella sua importazione.
MandatoryRelease pu� anche essere None, significa che la
novit� pianificata verr� eliminata.
Le istanze di classe _Feature possiedono due metodi corrispondenti, getOptionalRelease() e getMandatoryRelease().
CompilerFlag � l'opzione (campo di bit) che dovrebbe venire passato nel quarto argomento della funzione built-in compile() per abilitare la nuova caratteristica nel codice compilato dinamicamente. Questa opzione viene memorizzata nell'attributo compiler_flag sulle istanze _Future.
Nessuna descrizione di funzionalit� verr� cancellata da __future__.
Vedete Circa questo documento... per informazioni su modifiche e suggerimenti.