5 repository-uri
Runtimes and mechanisms for executing Lua scripts from within a host application.
Distinct from Lua Scripting: Existing candidates are too specific to Redis or RFID hardware; this is for general-purpose C++ embedding.
Explore 5 awesome GitHub repositories matching programming languages & runtimes · Lua Script Execution Environments. Refine with filters or upvote what's useful.
Sol2 este o bibliotecă de binding C++ Lua care servește drept strat de interoperabilitate a limbajelor pentru integrarea scripturilor Lua în aplicații C++. Acționează ca un wrapper de scripting și set de instrumente API, permițând execuția codului Lua și gestionarea stării partajate într-un mediu C++ nativ. Biblioteca se concentrează pe maparea automată a funcțiilor și tipurilor pentru a face legătura între clasele C++ native și tipurile de date complexe cu motorul de scripting Lua. Oferă mecanisme pentru schimbul bidirecțional de date, permițând logicii compilate și variabilelor să fie sincronizate între aplicația gazdă și runtime-ul scriptului. Sistemul include capabilități pentru binding API nativ, maparea tipurilor personalizate și execuția scripturilor din interiorul unui mediu C++. De asemenea, gestionează resursele prin gestionarea automată a memoriei și urmărirea duratei de viață a obiectelor.
Implements the execution of Lua script code from C++, including stack and error management.
Splash este un API HTTP de browser headless și un motor de randare JavaScript conceput pentru a converti conținutul web dinamic în HTML static sau imagini. Funcționează ca un serviciu de browser scriptabil în Lua care expune capabilități de automatizare și randare a browserului printr-o interfață RESTful pentru extragerea programatică a datelor. Serviciul se distinge prin faptul că permite executarea de scripturi Lua personalizate pentru a automatiza secvențe complexe de interacțiune cu utilizatorul și navigarea pe pagini. Oferă posibilitatea de a comuta motoarele de randare per cerere pentru a verifica compatibilitatea cross-browser și consistența vizuală. Platforma acoperă o gamă largă de capabilități, inclusiv interacțiunea web automatizată prin evenimente simulate de tastatură și mouse, precum și interceptarea traficului de rețea pentru a monitoriza sau modifica cererile și răspunsurile. De asemenea, suportă extragerea DOM folosind selectori CSS și exportul jurnalelor de rețea pentru analiza traficului.
Executes custom Lua scripts to control browser behavior and automate complex interaction sequences.
FRRouting este o suită de rutare internet care cuprinde o colecție de daemoni ce implementează protocoale de rutare standard IPv4 și IPv6. Oferă un motor de protocol pentru BGP, un virtualizator de rețea EVPN și un manager de etichete MPLS, alături de o interfață de rutare gRPC pentru configurare programatică și preluarea datelor folosind modele YANG. Suita se distinge prin extensibilitatea sa printr-un framework de scripting Lua care execută scripturi personalizate la hook-uri interne pentru a modifica comportamentul de rutare. De asemenea, dispune de un model de configurare tranzacțional care utilizează baze de date separate pentru „candidate” și „running” pentru a asigura commit-uri atomice și rollback-uri ale setărilor de sistem. Proiectul acoperă o gamă largă de protocoale gateway interioare și exterioare, inclusiv OSPF, IS-IS, EIGRP și RIP. Suportă ingineria avansată a traficului prin Segment Routing și SRv6, virtualizarea rețelei prin izolarea VRF și L3VPN-uri, și monitorizarea cuprinzătoare prin SNMP și BGP Monitoring Protocol. Software-ul poate fi implementat prin compilare din sursă, toolchain-uri cross-architecture sau imagini de container Docker pre-construite.
Provides an extensibility framework that executes Lua scripts at protocol event hooks to modify routing behavior.
crun este un runtime de containere low-level care implementează specificația Open Container Initiative pentru gestionarea ciclului de viață al proceselor izolate. Oferă mecanismele de bază pentru crearea, execuția și ștergerea containerelor, asigurând compatibilitatea între platforme prin gestionarea standardizată a ciclului de viață. Proiectul se distinge prin oferirea unei biblioteci C partajate care permite ca operațiunile runtime-ului de containere să fie încorporate direct în alte aplicații compilate. Extinde în continuare capabilitățile de execuție prin handler-e specializate care permit implementarea containerelor în microVM-uri izolate sau execuția sarcinilor de lucru WebAssembly. Runtime-ul acoperă o gamă largă de capabilități de izolare low-level și gestionare a resurselor. Aceasta include utilizarea de namespace-uri și filtre seccomp pentru securitate, cgroups pentru impunerea limitelor de CPU și memorie, și instrumente pentru salvarea și reluarea stărilor de execuție a containerelor prin checkpoint și restore. Oferă, de asemenea, interfețe pentru actualizări dinamice de resurse, gestionarea mount-urilor și automatizare printr-o interfață Lua încorporată.
Exposes the runtime library to Lua scripts for programmatic control of container environments.
Luvit is an event-driven runtime for Lua that integrates libuv to provide non-blocking I/O and asynchronous system operations. It functions as an asynchronous network framework and execution environment that leverages Just-In-Time compilation for high-performance script processing. The platform enables the distribution of network traffic across multiple CPU cores through a TCP cluster manager that shares socket handles among child processes. It provides specialized capabilities for building HTTP servers by decoding incoming request streams and encoding responses via a stream processor. The r
Provides an execution environment to run Lua scripts using a non-blocking, event-driven runtime.