Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1174 connectés 

  FORUM HardWare.fr
  Programmation
  Divers

  appel de sous programme par entrée textuelle.

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

appel de sous programme par entrée textuelle.

n°2279161
Profil sup​primé
Posté le 07-04-2016 à 21:44:44  answer
 

Bonjour,
J'utilise un langage de haut niveau fortement typé, je désire appeler une fonction A à l'entrée du text "A".
Comment procèderiez- vous ?
 
Le mieux que je saurais faire c'est mettre des type accès à fonction englobé avec un nom et éxécuter la fonction de nom "nom" après recherche du nom.
Merci pour votre aide.


Message édité par Profil supprimé le 07-04-2016 à 22:42:49
mood
Publicité
Posté le 07-04-2016 à 21:44:44  profilanswer
 

n°2279174
rufo
Pas me confondre avec Lycos!
Posté le 08-04-2016 à 10:10:41  profilanswer
 

En PHP, on peut faire ça. Mais ça peut être dangereux puisque tu donnes accès à l'utilisateur à pleins de fonctions :o


---------------
Astres, outil de help-desk GPL : http://sourceforge.net/projects/astres, ICARE, gestion de conf : http://sourceforge.net/projects/icare, Outil Planeta Calandreta : https://framalibre.org/content/planeta-calandreta
n°2279178
Profil sup​primé
Posté le 08-04-2016 à 10:59:03  answer
 

Bonjour rufo.
J'écris avec Ada, mais c'est une autre solution que je viens chercher ici si c'est possible de faire autrement.

n°2279264
eroge
Posté le 11-04-2016 à 13:15:05  profilanswer
 

@localghost
 
Pas compris , peut-tu donner un exemple plus realiste ?
 

Citation :

Le mieux que je saurais faire[...]


Post le code , ça aide .

n°2279267
rufo
Pas me confondre avec Lycos!
Posté le 11-04-2016 à 13:40:46  profilanswer
 

Je pense qu'il parle d'une sorte de gros switch où, en fonction de la chaîne de caractères rentrée (le nom de la fonction), il appelle la fonction portant le même nom.
 
Mais bon, c'est sûr que ça serait long si y'a beaucoup de fonctions :/


---------------
Astres, outil de help-desk GPL : http://sourceforge.net/projects/astres, ICARE, gestion de conf : http://sourceforge.net/projects/icare, Outil Planeta Calandreta : https://framalibre.org/content/planeta-calandreta
n°2279270
h3bus
Troll Inside
Posté le 11-04-2016 à 16:25:06  profilanswer
 

Je voulais faire ce genre de truc avec du VHDL (proche du ada donc), jamais trouvé mieux que le gros switch :/


---------------
sheep++
n°2279305
Profil sup​primé
Posté le 12-04-2016 à 06:15:56  answer
 

Le but est d'éviter un switch justement.

n°2279306
Profil sup​primé
Posté le 12-04-2016 à 07:21:41  answer
 

eroge a écrit :

@localghost
 
Pas compris , peut-tu donner un exemple plus realiste ?
 

Citation :

Le mieux que je saurais faire[...]


Post le code , ça aide .


 
 
Bonjour eroge,
Merci de t'intéresser à mon problème.
Loin d'avoir implémenté la solution, voici un début de spécification avec Ada.

Code :
  1. package Libroot.Es.Abstracts is
  2.  
  3.   pragma Pure (Libroot.Es.Abstracts);
  4.  
  5.   type Abstract_Type is abstract tagged null record;
  6.        
  7. end Libroot.Es.Abstracts;


Code :
  1. package Libroot.Es.Abstracts.objects is      
  2.  
  3.   type Object_Type is abstract new Abstract_Type with null record;        
  4.  
  5.   type Object_Access is access all Object_Type'Class;
  6.  
  7.   type Variadic_Array_Type is array (Natural range <> ) of Object_Access;
  8.  
  9.   type Procedure_Access is access
  10.     procedure (Object : in out Object_Type'Class;
  11.                Var    : in Variadic_Array_Type);
  12.      
  13. end Libroot.Es.Abstracts.objects;


Code :
  1. package Libroot.Es.Abstracts.Objects.Entries is
  2.  
  3.   type String_Access is access all String;
  4.  
  5.   type Entry_Type is tagged
  6.      record    
  7.         Proc : Procedure_Access;
  8.         Name : String_Access;
  9.      end record;  
  10. end Libroot.Es.Abstracts.Objects.Entries;


Message édité par Profil supprimé le 12-04-2016 à 07:40:57
n°2279342
Profil sup​primé
Posté le 13-04-2016 à 00:37:12  answer
 

Bon, finalement j'ai fait comme j'ai dit.
Ca retourn juste une image de l'objet de type chaîne de character;
Ca donne pas mal, puisque au final j'ai ça pour nimporte quel objet et nimporte quel function :
 

Code :
  1. for Entry_Id in Human_Interface.Human_Entries'Range loop
  2.  if Human_Interface.Human_Entries(Entry_Id).Name.all = Predicat then
  3.    Human_Interface.Human_Entries(Entry_Id).Proc (Human_Interface,
  4.                                         Parameters,
  5.                                         Results);
  6.  
  7.    for Result_Id in Results'Range loop                                     
  8.       if Results(Result_Id).all.Initialized then
  9.        Response(Result_Id) := new String ' (Results(Result_Id).all.To_String);
  10.       end if;
  11.    end loop;
  12.    exit;
  13.  end if;
  14. end loop;


 
Merci, si vous avez une autre idée, je suis curieux.

n°2279343
Profil sup​primé
Posté le 13-04-2016 à 01:14:06  answer
 

Le projet à la naissance, c'est Cyborg écrit avec Ada est c'est viewable here
Ah oui, c'est un système client/serveur mais je n'ai implémenté que le serveur qui disose d'un client qui permet de passer deux commandes : date et hello ; dans une interface text dans un terminal Gnu/Linux avec un beau cadre qui affiche l'heure en temps réel, et qui scinde une long ligne de commande ou de résultat sur plusieurs lignes dans des cadred, ... Normalement.


Message édité par Profil supprimé le 13-04-2016 à 01:29:18
mood
Publicité
Posté le 13-04-2016 à 01:14:06  profilanswer
 

n°2279346
rufo
Pas me confondre avec Lycos!
Posté le 13-04-2016 à 09:39:02  profilanswer
 

Purée, c'est moi, ou Jovalise est revenu ? Dès que je vois des topics avec Ada et des phrases que je ne pige pas, je pense à lui :lol:


---------------
Astres, outil de help-desk GPL : http://sourceforge.net/projects/astres, ICARE, gestion de conf : http://sourceforge.net/projects/icare, Outil Planeta Calandreta : https://framalibre.org/content/planeta-calandreta
n°2279347
Farian
Posté le 13-04-2016 à 11:31:58  profilanswer
 

Tu n'es pas le seul à te faire exactement la même remarque ... Mais le style est un poil différent, je trouve, y compris au niveau de la mise en forme du code (qui était  meilleure (dans mon souvenir) avec l'original :bounce: )
 
Je vote pour un copycat ! :o


---------------
On n'est jamais très fort pour ce calcul !
n°2279359
Profil sup​primé
Posté le 13-04-2016 à 13:08:30  answer
 

Comment ça meilleurs que mon code ?
Aurais-je transigé avec ma discipline ?

n°2279360
Farian
Posté le 13-04-2016 à 13:14:50  profilanswer
 

Je parle de la mise en forme sur le forum, pas du code en lui même ! :non:


---------------
On n'est jamais très fort pour ce calcul !
n°2279367
gilou
Modérateur
Modzilla
Posté le 13-04-2016 à 14:20:31  profilanswer
 

rufo a écrit :

Purée, c'est moi, ou Jovalise est revenu ?

[:gilbert gosseyn]  
 
A+,


---------------
There's more than what can be linked! --    Iyashikei Anime Forever!    --  AngularJS c'est un framework d'engulé!  --
n°2279369
rufo
Pas me confondre avec Lycos!
Posté le 13-04-2016 à 14:22:29  profilanswer
 

C'est bien ce qu'il me semblait... Jovalise, tu as beau changer de pseudo (ça doit bien faire le 3ème), on e reconnais à chaque fois : ton style d'expression est inimitable :D


---------------
Astres, outil de help-desk GPL : http://sourceforge.net/projects/astres, ICARE, gestion de conf : http://sourceforge.net/projects/icare, Outil Planeta Calandreta : https://framalibre.org/content/planeta-calandreta
n°2279370
gilou
Modérateur
Modzilla
Posté le 13-04-2016 à 14:26:20  profilanswer
 

Non mais ADA + ce style, c'est inimitable [:cytrouille:1]  
 
A+,


---------------
There's more than what can be linked! --    Iyashikei Anime Forever!    --  AngularJS c'est un framework d'engulé!  --

Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  Divers

  appel de sous programme par entrée textuelle.

 

Sujets relatifs
Appel batch à partir script powershellAppel concurent de procedure stocké oracle dans mon programme java
[Ada][Resolu]Ambiguïté à l'appel d'une fonction en POOAppel d'une autre page a partir d'une page HTML ou PHP
Problème d'appel XML::ParserMysql : nombre de jours entre deux dates pour une entrée
temps d'une Entrée SortieIncrémenter compteur après appel de constructeur JAVA
appel fonction à un menuitem d'une toolbar gtk2Moteur de recherche suggestif avec appel WebService
Plus de sujets relatifs à : appel de sous programme par entrée textuelle.


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR