Ruby - Variabili predefinite

Le variabili predefinite di Ruby influenzano il comportamento dell'intero programma, quindi il loro utilizzo nelle librerie non è raccomandato.

È possibile accedere ai valori nella maggior parte delle variabili predefinite con mezzi alternativi.

La tabella seguente elenca tutte le variabili predefinite di Ruby.

Sr.No. Nome e descrizione della variabile
1

$!

L'ultimo oggetto eccezione sollevato. È inoltre possibile accedere all'oggetto eccezione utilizzando => nella clausola di salvataggio .

2

[email protected]

Il backtrace dello stack per l'ultima eccezione sollevata. Le informazioni di backtrace dello stack possono essere recuperate dal metodo di backtrace dell'ultima eccezione.

3

$/

Il separatore del record di input (newline per impostazione predefinita). gets, readline, ecc., prendono il separatore del record di input come argomento opzionale.

4

$\

Il separatore del record di output (nullo per impostazione predefinita).

5

$,

Il separatore di output tra gli argomenti da stampare e Array # join (nullo per impostazione predefinita). È possibile specificare il separatore in modo esplicito in Array # join.

6

$;

Il separatore predefinito per la divisione (zero per impostazione predefinita). È possibile specificare il separatore in modo esplicito per String # split.

7

$.

Il numero dell'ultima riga letta dal file di input corrente. Equivalente a ARGF.lineno.

8

$<

Sinonimo di ARGF.

9

$>

Sinonimo di $ defout.

10

$0

Il nome del programma Ruby corrente in esecuzione.

11

$$

Il pid del processo del programma Ruby corrente in esecuzione.

12

$?

Lo stato di uscita dell'ultimo processo è terminato.

13

$:

Sinonimo di $ LOAD_PATH.

14

$DEBUG

Vero se viene specificata l'opzione della riga di comando -d o --debug.

15

$defout

L'output di destinazione per print e printf ( $ stdout per impostazione predefinita).

16

$F

La variabile che riceve l'output da split quando viene specificato -a. Questa variabile viene impostata se viene specificata l'opzione -a della riga di comando insieme all'opzione -p o -n.

17

$FILENAME

Il nome del file attualmente letto da ARGF. Equivalente a ARGF.filename.

18

$LOAD_PATH

Un array che contiene le directory in cui eseguire la ricerca durante il caricamento dei file con i metodi load e require.

19

$SAFE

Il livello di sicurezza

0 → Nessun controllo viene eseguito sui dati forniti esternamente (contaminati). (predefinito)

1 → Sono vietate operazioni potenzialmente pericolose che utilizzano dati contaminati.

2 → Le operazioni potenzialmente pericolose su processi e file sono vietate.

3 → Tutti gli oggetti appena creati sono considerati contaminati.

4 → La modifica dei dati globali è vietata.

20

$stdin

Input standard (STDIN per impostazione predefinita).

21

$stdout

Uscita standard (STDOUT per impostazione predefinita).

22

$stderr

Errore standard (STDERR per impostazione predefinita).

23

$VERBOSE

Vero se è specificata l'opzione della riga di comando -v, -w o --verbose.

24

$- x

Il valore dell'opzione dell'interprete -x (x = 0, a, d, F, i, K, l, p, v). Queste opzioni sono elencate di seguito

25

$-0

Il valore dell'opzione dell'interprete -x e l'alias di $ /.

26

$-a

Il valore dell'opzione -x dell'interprete e vero se l'opzione -a è impostata. Sola lettura.

27

$-d

Il valore dell'opzione -x dell'interprete e l'alias di $ DEBUG

28

$-F

Il valore dell'opzione dell'interprete -x e l'alias di $ ;.

29

$-i

Il valore dell'opzione dell'interprete -x e in modalità di modifica sul posto, mantiene l'estensione, altrimenti nulla. Può abilitare o disabilitare la modalità di modifica sul posto.

30

$-I

Il valore dell'opzione dell'interprete -x e l'alias di $ :.

31

$-l

Il valore dell'opzione -x dell'interprete e vero se l'opzione -l è impostata. Sola lettura.

32

$-p

Il valore dell'opzione -x dell'interprete e vero se l'opzione -p è impostata. Sola lettura.

33

$_

La variabile locale, l'ultima stringa letta da gets o readline nell'ambito corrente.

34

$~

La variabile locale MatchData relativa all'ultima corrispondenza. Il metodo di corrispondenza Regex # restituisce le ultime informazioni sulla corrispondenza.

35

$ n ($1, $2, $3...)

La stringa corrispondente nell'ennesimo gruppo dell'ultima corrispondenza di pattern. Equivalente a m [n], dove m è un oggetto MatchData .

36

$&

La stringa corrispondente nell'ultima corrispondenza di pattern. Equivalente a m [0], dove m è un oggetto MatchData .

37

$`

La stringa che precede la corrispondenza nell'ultima corrispondenza del modello. Equivalente a m.pre_match, dove m è un oggetto MatchData .

38

$'

La stringa che segue la corrispondenza nell'ultima corrispondenza del modello. Equivalente a m.post_match, dove m è un oggetto MatchData.

39

$+

La stringa corrispondente all'ultimo gruppo trovato con successo nell'ultima corrispondenza di pattern.