@designliquido/lincones-sqlite
Version:
Implementação de LinConEs para SQLite.
37 lines (36 loc) • 1.87 kB
TypeScript
import { TradutorSqLite } from "./tradutor";
import { AvaliadorSintatico } from "./comum/fontes/avaliador-sintatico";
import { Lexador } from "./comum/fontes/lexador";
import { ClienteSQLite } from "./infraestrutura/cliente-sqlite";
import { RetornoComando } from "./infraestrutura";
import { Comando, TecnologiaLinconesInterface } from "./comum/fontes";
/**
* Implementação da tecnologia LinConEs para SQLite, permitindo a execução de comandos escritos em LinConEs diretamente em um banco de dados SQLite.
* Esta classe integra o processo de lexagem, avaliação sintática, tradução e execução de comandos, proporcionando uma interface unificada para
* interagir com o banco de dados SQLite usando a sintaxe do LinConEs.
*/
export declare class LinconesSQLite implements TecnologiaLinconesInterface {
lexador: Lexador;
avaliadorSintatico: AvaliadorSintatico;
tradutor: TradutorSqLite;
clienteSQLite: ClienteSQLite | undefined;
configuracao?: {
caminho?: string;
[chave: string]: any;
};
constructor(configuracao?: {
caminho?: string;
[chave: string]: any;
});
iniciar(caminho?: string): Promise<void>;
executarComando(comando: Comando): Promise<RetornoComando[]>;
/**
* Traduz um comando de LinConEs para SQL e executa no banco de dados SQLite.
* @param _ Normalmente a instância do interpretador Delégua.
* @param sentencaLincones A sentença em LinConEs a ser traduzida e executada.
* @param parametros Parâmetros adicionais para o comando, se necessário.
* @returns {Promise<RetornoComando[]>} Uma promessa que resolve para um array de objetos RetornoComando, representando os resultados da execução dos comandos.
*/
executar(_: any, sentencaLincones: string, parametros?: any[]): Promise<RetornoComando[]>;
private executarInterno;
}