begin process at 2010 03 14 08:09:40
  Trouver un code source :
 
dans
 
Accueil > 

Code

 > 

Astuces

 > NOUVEL ALIAS POUR HASH TABLE /HREP

NOUVEL ALIAS POUR HASH TABLE /HREP


 Information sur la source

Note :
1 / 10 - par 1 personne
1,00 / 10

  • 1

  • 2

  • 3

  • 4

  • 5

  • 6

  • 7

  • 8

  • 9

  • 10
Catégorie :Astuces Niveau :Débutant Date de création :06/07/2004 Date de mise à jour :08/07/2004 08:28:44 Vu :2 384

Auteur : talking

Ecrire un message privé
Commentaire sur cette source (10)
Ajouter un commentaire et/ou une note

 Description

Cet alias vous permettra de remplacer un le contenu d'un item d'une table par quelque chose d'autre. Si vous avez d'autres idées comuniquez les moi merci

Source

  • alias hrep {
  • if (!$1) { echo -a *** /hrep Erreur Il manque des paramètres . Nom de la table manquante | halt }
  • if (!$2) { echo -a *** /hrep Erreur Il manque des paramètres . Nom de l'item absent | halt }
  • if (!$3-) { echo -a *** /hrep Erreur Il manque des paramètres . Paramètre remplaçant manquant | halt }
  • else {
  • if (!$hget($1)) { echo -a *** /hrep Erreur table $1 Inexistante | halt }
  • if (!$hget($1,$2)) { echo -a *** /hrep Erreur Item $2 de la table $1 Inexitant | halt }
  • .hadd -m $1-
  • }
  • }
alias hrep {
  if (!$1) { echo -a *** /hrep Erreur Il manque des paramètres . Nom de la table manquante | halt }
  if (!$2) { echo -a *** /hrep Erreur Il manque des paramètres . Nom de l'item absent | halt  }
  if (!$3-) { echo -a *** /hrep Erreur Il manque des paramètres . Paramètre remplaçant manquant | halt  }
  else {
    if (!$hget($1)) { echo -a *** /hrep Erreur table $1 Inexistante | halt }
    if (!$hget($1,$2)) { echo -a *** /hrep Erreur Item $2 de la table $1 Inexitant | halt }
     .hadd -m $1-
  }
}

 Conclusion

Le but de ce code est de supprimer l'item puis de le recréer


 Sources du même auteur

Source avec Zip Source avec une capture COULEUR D'ÉCRITURE AVANCÉE
GHOST DIALOG V2.0
GHOST DIALOG
CODEUR DECODEUR QUI UTILISE $ENCODE $DECODE
Source avec Zip PETIT DIALOG POUR GHOSTER

 Sources de la même categorie

Source avec une capture ALIAS POUR TELECHARGER UNE VIDEO SUR YOUTUBE (MISE A JOUR V1... par WorldDMT
ANTI SAJOIN par Maka57
PERMET DE CHERCHER UN HOST par ACoZz
Source avec Zip SIMULATION D'UNE ROULETTE QUI TOURNE par wims
SELPOS - SELECTION ET POSITION ! par wims

Commentaires et avis

Commentaire de SornDrixer le 06/07/2004 14:36:47 administrateur CS

Tes 3 if de vérification d'erreur, tu peux en faire qu'un seul :
if !$3 { echo -a *** /hrep Erreur Paramètre manquant | halt }
Si $3 n'existe pas, c'est que $1 et $2 non plus.
Si cela te gêne cette méthode de raisonner, tu peux toujours faire :
if (!$1 || !$2 || !$3) { }
Si tu veux absolument afficher à quoi correspond le paramètre manquant, utilises $iif()

Voila, sinon c'est une très bonne chose de vouloir compléter les commandes pour hashtable, mais je trouve le code un peu maigre.
une idée :
En spécifiant le paramètre -n à ton alias, si jamais la table n'existe pas, alors ton alias la crée.

Commentaire de talking le 06/07/2004 16:02:25

D'accord merci SornDrixer je vais modifier ça je vais essayer d'utiliser le $iif comme tu l'a dit je l'utilise térs souvent dans mes autres codes

Commentaire de ReMi34 le 06/07/2004 16:36:15

Wapsnest avait réaliser la même chose :/

Commentaire de talking le 06/07/2004 17:10:38

ah bon ?? j'ai jamais vu cet alias ici

Commentaire de Seregon le 06/07/2004 19:52:29

$1 $2 devien $1-2
$1 $2 $3 devien $1-

Commentaire de tofu le 06/07/2004 21:12:48

t'as pas besoin de .hdel puis .hadd, qd tu .hadd ça écrase ce que tu avais précédemment.

Commentaire de Melnofil le 23/11/2004 03:32:28

Bravo félicitations je t'ai mis 1 (Bon maintenant je me justifie avant de me faire casser la g***le)

Dans un alias appelé sous la forme /hrep il est impossible que les paramêtres $1 et $2 soient nuls si $3 ne l'est pas. Et plus simplement tu peux tester si "$0 > 2" ($0 contient le nombre de paramètres).
Note : Dans un identifiant il faudrait d'abords utiliser "/tokenize 32 $1-" pour parvenir au même résultat.

De plus tu utilise l'option "-m", je cite l'aide :
"L'option -m fait que /hadd crée la table si elle n'existe pas déjà."
Et ben alors... pkoi diable est-ce qu'on viens de faire un "if (!$hget($1))" ??

De plus il est toujours plus judicieux (pas obligatoire !) de traiter en premier les cas ou tout ce passe bien, puis traiter les erreurs à la fin ; surtout quand on se trouve dans une structure if/then/else facile à lire.

Et enfin une remarque -juste pour faire plus classe- on peut remplacer tous les 5 "halt" par seulement 1 "halt" pour le prix d'un "return" en plus.

Voilà ce que ca donne :

alias hrep {
if $0 > 2 {
if $hget($1,$2) != $null { .hadd -m $1- | return }
elseif !$hget($1) { echo -a *** /hrep Erreur table $1 Inexistante }
else echo -a *** /hrep Erreur Item $2 de la table $1 Inexitant
}
else echo -a *** /hrep Erreur Il manque $calc(3 - $0) paramètre(s).
halt
}

Commentaire de Melnofil le 23/11/2004 03:37:03

A mince j'ai oublié de signaler/modifier une autre erreur :
Par défauts les fonctions sur les htables n'affichent rien (il faut utiliser le paramêtre "-s") donc le "." devant "hadd" sert à rien, tofu c'est aussi vrai pour toi avec "hdel"...

Commentaire de tofu le 23/11/2004 07:44:00

j'ai rajouté le point pour qu'on voye dans mon commentaire que ct une commande, comme si je connaissais pas les hash tables lais mdr quoi ..

Commentaire de Melnofil le 23/11/2004 14:56:04

ok autant pour moi désolé ^^

 Ajouter un commentaire




Nos sponsors


Appels d'offres

Sondage...

Comparez les prix

CalendriCode

Mars 2010
LMMJVSD
1234567
891011121314
15161718192021
22232425262728
293031    

Consulter la suite du CalendriCode

Photothèque

 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 0,390 sec (3)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales