
カリストは軽量で強力ですか?これにより、Luajit ScriptingはDelphiに統合され、Delphiアプリにスクリプトレイヤーを簡単に追加できます。動的なソフトウェアを構築したり、MODサポートを追加したり、アプリをより柔軟でカスタマイズ可能にする方法を探している場合でも、Callistoはシンプルで簡単なAPIを通じてこれを可能にします。
カリストは橋を提供していますか? DelphiとLuajitの間で、Delphiプロジェクトの機能を拡張するための強力なスクリプトソリューションを提供します。 Callistoを使用すると、Delphiの開発者は、Luaのようなダイナミックで速い⚡、使いやすいスクリプト言語を埋め込むことのすべての利点を享受できますが、Luajitを高性能で活用します。
このライブラリは、LUAをDelphiアプリケーションに可能な限りシームレスに統合し、使いやすさ、効率、最小限の学習曲線に焦点を当てるように設計されています。すべての依存関係は実行可能ファイルに直接コンパイルされ、外部DLLの必要性を排除し、展開をよりシンプルで信頼性の高いcompledにします。
dbg()を使用して、インタラクティブなデバッグを開始します。importコマンドを使用してスクリプトを組み合わせ、単一のファイルにコンパイルし、オプションで完全に自己完結型アプリケーションのEXEリソースとして保存します。このセクションでは、Delphi環境でCallistoを稼働させて実行するのに役立ちます。
Callistoリポジトリをクローンまたはダウンロードします。
CallistoソースファイルをDelphiプロジェクトに追加します。
?カリストの最新バージョンをダウンロードします。
コンテンツをプロジェクトディレクトリに抽出します。
callisto srcフォルダーをデルファイのライブラリパスに追加します。
プロジェクトには、 Callistoにuses節を含めます。
?詳細な使用手順とPSFMLライブラリのデモンストレーションについては、実施中のexamplesを参照してください。
それでおしまい!これで、DelphiプロジェクトでLuaでスクリプトを開始できるようになりました。
Callistoを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は、次のような高度な機能もサポートしています。
dbg()を追加してデバッグを開始します。ランタイム中に問題を識別するのに役立ちます。importを使用して、さまざまなスクリプトファイルを単一のコンパイルユニットにバンドルします。これは、コンパイルされたスクリプトをリソースとして保存およびロードするのに役立ちます。CompileToStream()を使用してluaスクリプトをbytecodeにコンパイルし、効率的なパッケージと配布を可能にします。 Callisto APIは、強力で使いやすいように設計されています。以下は、主要なクラスとメソッドへの簡単な参照です。
Callisto、その機能、およびそのユースケースに関する詳細な議論を調べてください。
カリストへの貢献は強く奨励されています。お気軽に問題を提出したり、新機能を提案したり、スクリプトエンジンの機能と堅牢性を拡張するためのプルリクエストを作成してください。
カリストは? BSD-3-Clauseライセンス。特定の条件下で、変更の有無にかかわらず、ソースフォームとバイナリ形式の両方での再分配と使用を可能にします。詳細については、ライセンスファイルを参照してください。
カリストがあなたのデルファイプロジェクトをよりダイナミックで柔軟にするのに役立つことを願っています。ハッピーコーディング! ?

Delphiで❤️で作られています