Ruby - Variáveis ​​Predefinidas

As variáveis ​​predefinidas do Ruby afetam o comportamento de todo o programa, portanto, seu uso em bibliotecas não é recomendado.

Os valores na maioria das variáveis ​​predefinidas podem ser acessados ​​por meios alternativos.

A tabela a seguir lista todas as variáveis ​​predefinidas do Ruby.

Sr. Não. Nome e descrição da variável
1

$!

O último objeto de exceção gerado. O objeto de exceção também pode ser acessado usando => na cláusula de resgate .

2

$@

O backtrace da pilha para a última exceção gerada. As informações de backtrace da pilha podem ser recuperadas pelo método Exception # backtrace da última exceção.

3

$/

O separador de registro de entrada (nova linha por padrão). get, readline, etc., tomam seu separador de registro de entrada como argumento opcional.

4

$\

O separador de registro de saída (nulo por padrão).

5

$,

O separador de saída entre os argumentos a serem impressos e Array # join (nil por padrão). Você pode especificar o separador explicitamente para Array # join.

6

$;

O separador padrão para divisão (nulo por padrão). Você pode especificar o separador explicitamente para a divisão String #.

7

$.

O número da última linha lida do arquivo de entrada atual. Equivalente a ARGF.lineno.

8

$<

Sinônimo de ARGF.

9

$>

Sinônimo de $ defout.

10

$0

O nome do programa Ruby atual sendo executado.

11

$$

O processo pid do programa Ruby atual sendo executado.

12

$?

O status de saída do último processo encerrado.

13

$:

Sinônimo de $ LOAD_PATH.

14

$DEBUG

Verdadeiro se a opção de linha de comando -d ou --debug for especificada.

15

$defout

A saída de destino para print e printf ( $ stdout por padrão).

16

$F

A variável que recebe a saída da divisão quando -a é especificado. Esta variável é definida se a opção de linha de comando -a for especificada junto com a opção -p ou -n.

17

$FILENAME

O nome do arquivo que está sendo lido atualmente do ARGF. Equivalente a ARGF.filename.

18

$LOAD_PATH

Um array contendo os diretórios a serem pesquisados ​​ao carregar arquivos com os métodos load e require.

19

$SAFE

O nível de segurança

0 → Nenhuma verificação é realizada nos dados fornecidos externamente (contaminados). (padrão)

1 → Operações potencialmente perigosas usando dados contaminados são proibidas.

2 → Operações potencialmente perigosas em processos e arquivos são proibidas.

3 → Todos os objetos recém-criados são considerados corrompidos.

4 → A modificação dos dados globais é proibida.

20

$stdin

Entrada padrão (STDIN por padrão).

21

$stdout

Saída padrão (STDOUT por padrão).

22

$stderr

Erro padrão (STDERR por padrão).

23

$VERBOSE

Verdadeiro se a opção de linha de comando -v, -w ou --verbose for especificada.

24

$- x

O valor da opção do interpretador -x (x = 0, a, d, F, i, K, l, p, v). Essas opções estão listadas abaixo

25

$-0

O valor da opção do interpretador -x e alias de $ /.

26

$-a

O valor da opção -x do interpretador e true se a opção -a for definida. Somente leitura.

27

$-d

O valor da opção do interpretador -x e alias de $ DEBUG

28

$-F

O valor da opção do interpretador -x e alias de $ ;.

29

$-i

O valor da opção do interpretador -x e no modo de edição local mantém a extensão, caso contrário, nil. Pode ativar ou desativar o modo de edição local.

30

$-I

O valor da opção do interpretador -x e alias de $ :.

31

$-l

O valor da opção -x do interpretador e true se a opção -l estiver definida. Somente leitura.

32

$-p

O valor da opção -x do interpretador e true se a opção -pis estiver definida. Somente leitura.

33

$_

A variável local, última string lida por get ou readline no escopo atual.

34

$~

A variável local, MatchData , relacionada à última correspondência. O método de correspondência Regex # retorna as informações da última correspondência.

35

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

A string correspondeu ao enésimo grupo da última correspondência de padrão. Equivalente a m [n], onde m é um objeto MatchData .

36

$&

A string correspondeu na última correspondência de padrão. Equivalente a m [0], onde m é um objeto MatchData .

37

$`

A string que precede a correspondência na última correspondência de padrão. Equivalente a m.pre_match, onde m é um objeto MatchData .

38

$'

A string após a correspondência na última correspondência de padrão. Equivalente a m.post_match, onde m é um objeto MatchData.

39

$+

A string correspondente ao último grupo correspondido com sucesso na última correspondência de padrão.