Yaml :: logique

Simple logique booléenne à Yaml
Télécharger maintenant

Yaml :: logique Classement & Résumé

Publicité

  • Rating:
  • Licence:
  • Perl Artistic License
  • Prix:
  • FREE
  • Nom de l'éditeur:
  • Michael Schilli
  • Site Internet de l'éditeur:
  • http://search.cpan.org/~mschilli/

Yaml :: logique Mots clés


Yaml :: logique La description

Logique booléenne simple à Yaml YAML :: Logic est un module Perl permettant aux utilisateurs de définir une simple logique booléenne dans un fichier de configuration, sans les permettre de exécuter un code arbitraire. Quelque code PERL peut être contrôlé avec le module SAFE, ne peut empêcher l'utilisateur de définir infini Boucles, épuisant toute la mémoire disponible ou écrasant l'interprète en exploitant des bugs perl bien connus. YAML :: La logique n'est pas parfaite à cet égard non plus, mais cela rend assez difficile de définir le code nocif. La syntaxe de la logique booléenne dans un fichier YAML a été inspirée par la rose de John Siracusa, Rose :: DB :: Object :: QueryBuilder Module , qui fournit des structures de données pour définir la logique qui est ensuite transformée en SQL. YAML :: La logique prend la structure de données plutôt que la structure de données et le transforme en code PERL.Pro exemple, la structure de données pour vérifier si une variable $ var est égale à une valeur "foo", ressemble à ceci: C'est une référence à un tableau contenant à la fois la valeur de la variable et la valeur pour le comparer. Dans Yaml, cela ressemble à la règle: - $ var - fooand C'est exactement la syntaxe que Yaml :: logique accepte. Notez qu'après l'analyse de la configuration YAML ci-dessus, vous devez passer uniquement le tableau Ref à l'intérieur de l'entrée de la règle à YamL :: Méthode d'évaluation de la logique (): $ logic-> évaluer ($ yaml_data -> {règle}, ... Toutes les données YAML entraîneraient une erreur avec YamL :: Logic, car il s'attend à recevoir un tableau Ref.Synopsis Utilisez YAML :: SYCK QW (Charge); Utilisez YAML :: Logic; My $ Logic = Yaml :: Logic-> Nouveau (); ### Tests définis quelque part dans un fichier YAML ... My $ données = charge (q {# est $ var égale à "foo"? Règle: - $ var - foo}); ### tests effectués dans Code de l'application: Si ($ logic-> évaluer ($ données -> {règle}, {var => "foo"})) {imprimé "vrai! "; } Exigences: · Perl


Yaml :: logique Logiciels associés