Pular para o conteúdo

A biblioteca YueScript

Acesse com local yue = require("yue") no Lua.

Descrição:

A biblioteca da linguagem YueScript.

Tipo: Campo.

Descrição:

A versão do YueScript.

Assinatura:

version: string

Tipo: Campo.

Descrição:

O separador de arquivos da plataforma atual.

Assinatura:

dirsep: string

Tipo: Campo.

Descrição:

O cache de código de módulo compilado.

Assinatura:

yue_compiled: {string: string}

Tipo: Função.

Descrição:

A função de compilação do YueScript. Compila o código YueScript para código Lua.

Assinatura:

to_lua: function(code: string, config?: Config):
--[[codes]] string | nil,
--[[error]] string | nil,
--[[globals]] {{string, integer, integer}} | nil

Parâmetros:

Parâmetro Tipo Descrição
code string O código YueScript.
config Config [Opcional] As opções do compilador.

Retorna:

Tipo de Retorno Descrição
string | nil O código Lua compilado, ou nil se a compilação falhou.
string | nil A mensagem de erro, ou nil se a compilação foi bem-sucedida.
{{string, integer, integer}} | nil As variáveis globais que aparecem no código (com nome, linha e coluna), ou nil se a opção do compilador lint_global for false.

Tipo: Função.

Descrição:

Função de verificação de existência do arquivo fonte. Pode ser sobrescrita para personalizar o comportamento.

Assinatura:

file_exist: function(filename: string): boolean

Parâmetros:

Parâmetro Tipo Descrição
filename string O nome do arquivo.

Retorna:

Tipo de Retorno Descrição
boolean Se o arquivo existe.

Tipo: Função.

Descrição:

Função de leitura do arquivo fonte. Pode ser sobrescrita para personalizar o comportamento.

Assinatura:

read_file: function(filename: string): string

Parâmetros:

Parâmetro Tipo Descrição
filename string O nome do arquivo.

Retorna:

Tipo de Retorno Descrição
string O conteúdo do arquivo.

Tipo: Função.

Descrição:

Insere o carregador YueScript nos carregadores de pacote (searchers).

Assinatura:

insert_loader: function(pos?: integer): boolean

Parâmetros:

Parâmetro Tipo Descrição
pos integer [Opcional] A posição para inserir o carregador. Padrão é 3.

Retorna:

Tipo de Retorno Descrição
boolean Se o carregador foi inserido com sucesso. Falhará se o carregador já estiver inserido.

Tipo: Função.

Descrição:

Remove o carregador YueScript dos carregadores de pacote (searchers).

Assinatura:

remove_loader: function(): boolean

Retorna:

Tipo de Retorno Descrição
boolean Se o carregador foi removido com sucesso. Falhará se o carregador não estiver inserido.

Tipo: Função.

Descrição:

Carrega código YueScript de uma string em uma função.

Assinatura:

loadstring: function(input: string, chunkname: string, env: table, config?: Config):
--[[loaded function]] nil | function(...: any): (any...),
--[[error]] string | nil

Parâmetros:

Parâmetro Tipo Descrição
input string O código YueScript.
chunkname string O nome do chunk de código.
env table A tabela de ambiente.
config Config [Opcional] As opções do compilador.

Retorna:

Tipo de Retorno Descrição
function | nil A função carregada, ou nil se o carregamento falhou.
string | nil A mensagem de erro, ou nil se o carregamento foi bem-sucedido.

Tipo: Função.

Descrição:

Carrega código YueScript de uma string em uma função.

Assinatura:

loadstring: function(input: string, chunkname: string, config?: Config):
--[[loaded function]] nil | function(...: any): (any...),
--[[error]] string | nil

Parâmetros:

Parâmetro Tipo Descrição
input string O código YueScript.
chunkname string O nome do chunk de código.
config Config [Opcional] As opções do compilador.

Retorna:

Tipo de Retorno Descrição
function | nil A função carregada, ou nil se o carregamento falhou.
string | nil A mensagem de erro, ou nil se o carregamento foi bem-sucedido.

Tipo: Função.

Descrição:

Carrega código YueScript de uma string em uma função.

Assinatura:

loadstring: function(input: string, config?: Config):
--[[loaded function]] nil | function(...: any): (any...),
--[[error]] string | nil

Parâmetros:

Parâmetro Tipo Descrição
input string O código YueScript.
config Config [Opcional] As opções do compilador.

Retorna:

Tipo de Retorno Descrição
function | nil A função carregada, ou nil se o carregamento falhou.
string | nil A mensagem de erro, ou nil se o carregamento foi bem-sucedido.

Tipo: Função.

Descrição:

Carrega código YueScript de um arquivo em uma função.

Assinatura:

loadfile: function(filename: string, env: table, config?: Config):
nil | function(...: any): (any...),
string | nil

Parâmetros:

Parâmetro Tipo Descrição
filename string O nome do arquivo.
env table A tabela de ambiente.
config Config [Opcional] As opções do compilador.

Retorna:

Tipo de Retorno Descrição
function | nil A função carregada, ou nil se o carregamento falhou.
string | nil A mensagem de erro, ou nil se o carregamento foi bem-sucedido.

Tipo: Função.

Descrição:

Carrega código YueScript de um arquivo em uma função.

Assinatura:

loadfile: function(filename: string, config?: Config):
nil | function(...: any): (any...),
string | nil

Parâmetros:

Parâmetro Tipo Descrição
filename string O nome do arquivo.
config Config [Opcional] As opções do compilador.

Retorna:

Tipo de Retorno Descrição
function | nil A função carregada, ou nil se o carregamento falhou.
string | nil A mensagem de erro, ou nil se o carregamento foi bem-sucedido.

Tipo: Função.

Descrição:

Carrega código YueScript de um arquivo em uma função e o executa.

Assinatura:

dofile: function(filename: string, env: table, config?: Config): any...

Parâmetros:

Parâmetro Tipo Descrição
filename string O nome do arquivo.
env table A tabela de ambiente.
config Config [Opcional] As opções do compilador.

Retorna:

Tipo de Retorno Descrição
any… Os valores de retorno da função carregada.

Tipo: Função.

Descrição:

Carrega código YueScript de um arquivo em uma função e o executa.

Assinatura:

dofile: function(filename: string, config?: Config): any...

Parâmetros:

Parâmetro Tipo Descrição
filename string O nome do arquivo.
config Config [Opcional] As opções do compilador.

Retorna:

Tipo de Retorno Descrição
any… Os valores de retorno da função carregada.

Tipo: Função.

Descrição:

Resolve o nome do módulo YueScript para o caminho do arquivo.

Assinatura:

find_modulepath: function(name: string): string

Parâmetros:

Parâmetro Tipo Descrição
name string O nome do módulo.

Retorna:

Tipo de Retorno Descrição
string O caminho do arquivo.

Tipo: Função.

Descrição:

Chama uma função em modo protegido. Captura quaisquer erros e retorna um código de status e resultados ou objeto de erro. Reescreve o número da linha do erro para o número da linha original no código YueScript quando ocorrem erros.

Assinatura:

pcall: function(f: function, ...: any): boolean, any...

Parâmetros:

Parâmetro Tipo Descrição
f function A função a chamar.
… any Argumentos a passar para a função.

Retorna:

Tipo de Retorno Descrição
boolean, … Código de status e resultados da função ou objeto de erro.

Tipo: Função.

Descrição:

Carrega um módulo dado. Pode ser um módulo Lua ou um módulo YueScript. Reescreve o número da linha do erro para o número da linha original no código YueScript se o módulo for um módulo YueScript e o carregamento falhar.

Assinatura:

require: function(name: string): any...

Parâmetros:

Parâmetro Tipo Descrição
modname string O nome do módulo a carregar.

Retorna:

Tipo de Retorno Descrição
any O valor armazenado em package.loaded[modname] se o módulo já estiver carregado. Caso contrário, tenta encontrar um carregador e retorna o valor final de package.loaded[modname] e os dados do carregador como segundo resultado.

Tipo: Função.

Descrição:

Inspeciona as estruturas dos valores passados e imprime representações em string.

Assinatura:

p: function(...: any)

Parâmetros:

Parâmetro Tipo Descrição
… any Os valores a inspecionar.

Tipo: Campo.

Descrição:

As opções atuais do compilador.

Assinatura:

options: Config.Options

Tipo: Função.

Descrição:

A função traceback que reescreve os números das linhas do stack trace para os números das linhas originais no código YueScript.

Assinatura:

traceback: function(message: string): string

Parâmetros:

Parâmetro Tipo Descrição
message string A mensagem de traceback.

Retorna:

Tipo de Retorno Descrição
string A mensagem de traceback reescrita.

Tipo: Função.

Descrição:

Verifica se o código corresponde ao AST especificado.

Assinatura:

is_ast: function(astName: string, code: string): boolean

Parâmetros:

Parâmetro Tipo Descrição
astName string O nome do AST.
code string O código.

Retorna:

Tipo de Retorno Descrição
boolean Se o código corresponde ao AST.

Tipo: Campo.

Descrição:

A definição do tipo AST com nome, linha, coluna e subnós.

Assinatura:

type AST = {string, integer, integer, any}

Tipo: Função.

Descrição:

Converte o código para o AST.

Assinatura:

to_ast: function(code: string, flattenLevel?: number, astName?: string, reserveComment?: boolean):
--[[AST]] AST | nil,
--[[error]] nil | string

Parâmetros:

Parâmetro Tipo Descrição
code string O código.
flattenLevel integer [Opcional] O nível de achatamento. Nível mais alto significa mais achatamento. Padrão é 0. Máximo é 2.
astName string [Opcional] O nome do AST. Padrão é “File”.
reserveComment boolean [Opcional] Se deve preservar os comentários originais. Padrão é false.

Retorna:

Tipo de Retorno Descrição
AST | nil O AST, ou nil se a conversão falhou.
string | nil A mensagem de erro, ou nil se a conversão foi bem-sucedida.

Tipo: Função.

Descrição:

Formata o código YueScript.

Assinatura:

format: function(code: string, tabSize?: number, reserveComment?: boolean): string

Parâmetros:

Parâmetro Tipo Descrição
code string O código.
tabSize integer [Opcional] O tamanho da tabulação. Padrão é 4.
reserveComment boolean [Opcional] Se deve preservar os comentários originais. Padrão é true.

Retorna:

Tipo de Retorno Descrição
string O código formatado.

Tipo: Metamétodo.

Descrição:

Requer o módulo YueScript. Reescreve o número da linha do erro para o número da linha original no código YueScript quando o carregamento falha.

Assinatura:

metamethod __call: function(self: yue, module: string): any...

Parâmetros:

Parâmetro Tipo Descrição
module string O nome do módulo.

Retorna:

Tipo de Retorno Descrição
any O valor do módulo.

Descrição:

As opções de compilação do compilador.

Tipo: Campo.

Descrição:

Se o compilador deve coletar as variáveis globais que aparecem no código.

Assinatura:

lint_global: boolean

Tipo: Campo.

Descrição:

Se o compilador deve fazer retorno implícito para o bloco de código raiz.

Assinatura:

implicit_return_root: boolean

Tipo: Campo.

Descrição:

Se o compilador deve preservar o número da linha original no código compilado.

Assinatura:

reserve_line_number: boolean

Tipo: Campo.

Descrição:

Se o compilador deve preservar os comentários originais no código compilado.

Assinatura:

reserve_comment: boolean

Tipo: Campo.

Descrição:

Se o compilador deve usar o caractere de espaço em vez do caractere de tabulação no código compilado.

Assinatura:

space_over_tab: boolean

Tipo: Campo.

Descrição:

Se o compilador deve tratar o código a ser compilado como o mesmo módulo que está sendo compilado atualmente. Apenas para uso interno.

Assinatura:

same_module: boolean

Tipo: Campo.

Descrição:

Se a mensagem de erro do compilador deve incluir o deslocamento do número da linha. Apenas para uso interno.

Assinatura:

line_offset: integer

Tipo: Enumeração.

Descrição:

A enumeração da versão alvo do Lua.

Assinatura:

enum LuaTarget
"5.1"
"5.2"
"5.3"
"5.4"
"5.5"
end

Tipo: Campo.

Descrição:

As opções extras a serem passadas para a função de compilação.

Assinatura:

options: Options

Descrição:

A definição das opções extras do compilador.

Tipo: Campo.

Descrição:

A versão alvo do Lua para a compilação.

Assinatura:

target: LuaTarget

Tipo: Campo.

Descrição:

O caminho de busca de módulo extra.

Assinatura:

path: string

Tipo: Campo.

Descrição:

Se deve incluir as variáveis locais na mensagem de erro do traceback. Padrão é false.

Assinatura:

dump_locals: boolean

Tipo: Campo.

Descrição:

Se deve simplificar a mensagem de erro. Padrão é true.

Assinatura:

simplified: boolean

YueScriptCompilador

Carregando compilador…