
Callisto é leve e poderoso? Isso integra scripts Luajit ao Delphi, permitindo que você adicione facilmente uma camada de script aos seus aplicativos Delphi. Esteja você criando software dinâmico, adicionando suporte ao mod ou simplesmente procurando uma maneira de tornar seus aplicativos mais flexíveis e personalizáveis, a Callisto torna isso possível por meio de APIs simples e simples.
Callisto oferece uma ponte? Entre Delphi e Luajit, fornecendo uma poderosa solução de script para estender os recursos de seus projetos Delphi. Com a Callisto, os desenvolvedores da Delphi podem desfrutar de todos os benefícios de incorporar uma linguagem de script dinâmica, rápida e fácil de usar, como Lua, enquanto aproveitava o Luajit para alto desempenho?
Esta biblioteca foi projetada para tornar a integração do Lua nos aplicativos Delphi o mais fácil possível, com foco na usabilidade, eficiência e uma curva mínima de aprendizado ?. Todas as dependências são compiladas diretamente no executável, eliminando a necessidade de DLLs externas e tornando a implantação mais simples e confiável ✅.
dbg() em seus scripts Lua para iniciar a depuração interativa.import personalizado para combinar scripts, compilá-los em um único arquivo e armazená-los opcionalmente como um recurso exe para um aplicativo totalmente independente.Esta seção ajudará você a colocar o Callisto em funcionamento no seu ambiente Delphi.
Clone ou faça o download do repositório Callisto.
Adicione os arquivos de origem Callisto ao seu projeto Delphi.
? Faça o download da versão mais recente do Callisto.
Extraia o conteúdo do seu diretório de projeto.
➕ Adicione a pasta Callisto src ao caminho da sua biblioteca em Delphi.
No seu projeto, inclua Callisto na cláusula uses .
? Consulte a pasta examples para obter instruções e demonstrações de uso detalhadas da biblioteca PSFML em ação.
É isso! Agora você deve poder começar a scripts com Lua em seus projetos Delphi.
Aqui estão alguns exemplos simples para demonstrar como integrar o Callisto ao seu projeto Delphi:
var
LCallisto: TCallisto;
begin
LCallisto := TCallisto.Create();
LCallisto.LoadString( ' print("Hello from Lua!") ' );
LCallisto.Free();
end ; class procedure TMyClass.DelphiRoutine ( const ALua: ICallistoContext);
begin
// Example routine that pushes a string result onto Lua stack
ACallisto.PushValue( ' Hello from Delphi! ' );
end ;
var
LCallisto: TCallisto;
begin
LCallisto := Callisto.Create();
LCallisto.RegisterRoutine( ' DelphiRoutine ' , TMyClass.MyDelphiRoutine);
LCallisto.LoadString( ' DelphiRoutine() ' );
LCallisto.Free();
end ; var
LCallisto: TCallisto;
LResult: TCallistoValue;
begin
LCallisto := TCallisto.Create();
LCallisto.LoadString( ' function greet() return "Hello from Lua!" end ' );
LResult := LCallisto.Call( ' greet ' , []);
ShowMessage(LResult.AsString);
LCallisto.Free();
end ;Callisto também suporta recursos avançados como:
dbg() no código Lua para começar a depuração, útil para identificar problemas durante o tempo de execução.import para agrupar vários arquivos de script em uma única unidade de compilação, que é útil para salvar e carregar scripts compilados como recursos.CompileToStream() , permitindo embalagens e distribuição eficientes. A API Callisto foi projetada para ser poderosa e fácil de usar. Abaixo está uma referência rápida às principais classes e métodos:
Explore a discussão aprofundada sobre a Callisto, seus recursos e seus casos de uso.
Contribuições para Callisto são altamente encorajadas. Sinta -se à vontade para enviar problemas, sugerir novos recursos ou criar solicitações de puxar para expandir os recursos e a robustez do mecanismo de script.
Callisto é distribuído sob o? Licença de cláusula BSD-3 , permitindo redistribuição e uso em formulários de origem e binária, com ou sem modificação, sob condições específicas. Consulte o arquivo de licença para obter mais detalhes.
Esperamos que a Callisto ajude a tornar seus projetos Delphi mais dinâmicos e flexíveis. Codificação feliz! ?

Feito com ❤️ em Delphi