Question

Y at-il un équivalent Lua pour bibliothèque shlex ?

Était-ce utile?

La solution

J'ai trouvé une référence à un projet appelé LuaParse :

  

LuaParse comprend Blex, un but général lexer pur-Lua et lparse, un analyseur pur-Lua Lua, ainsi qu'une variété de fonctions d'utilité et d'un système de gestion des paquets prototype.

Peut-être cela meed vos besoins.

Autres conseils

Voir aussi LPEG .

Si l'objectif est d'analyser un langage de type shell (qui apparaît objectif de conception réelle à shlex), puis d'écrire une grammaire dans LPEG comme lhf suggère est probablement la bonne réponse. Cependant, il est pas si facile d'écrire une grammaire qui implémente complètement le méli-mélo de règles en couches citant que les obus suivent réellement. Tant que vous ne vous attendez pas à analyser correctement toute /bin/sh valide (ou pire, csh) scripts, il devrait être facile d'écrire une grammaire qui est utile.

Si l'objectif est en fait de créer un « petit langage » sensible pour les fichiers de configuration ou les scripts d'application, alors je vous suggère que Lua lui-même est déjà très proche d'être cette langue. Il a été conçu à l'origine avec la description des données à l'esprit, et son analyseur est tout à fait apte à manipuler même assez grandes déclarations de données. Voir l'article 10.1 de PiL pour un exemple de la façon d'utiliser Lua cette façon. Le plus tard 25 décrit l'intégration de Lua avec une plus grande application pour le cas spécifique d'utilisation de configuration, et présente un certain nombre d'approches.

Voir aussi gg, modules mlp et clopts de Metalua .

Ce sont « pas tout à fait » Lua (comme Metalua est une langue distincte), mais peut fournir des renseignements utiles. Également le code Metalua compile en bytecode Lua plaine, il est donc réutilisable.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top