Method: PFA::RelativePFA#add
- Defined in:
- lib/pfa/relative_pfa.rb
#add(key, value) ⇒ Object
Note:
Je crois que maintenant value est toujours un [Hash] définis- sant les données de la clé.
Ajout d’un nœud dans le PFA
On utilise pour le faire : pfa.add(key, value). Si c’est un nœud, la valeur contient ‘<horloge>’, d: “description” et peut-être la clé :pfa_id qui définit l’index du PFA à utiliser
La clé :t peut-être remplacée par :time ou :start_at La clé :d peut-être remplacée par :description
69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 |
# File 'lib/pfa/relative_pfa.rb', line 69 def add(key, value) key = key.to_sym if AbsolutePFA.data[:nodes].key?(key) # # Ajout d'un nœud # # @note # Un noeud doit toujours être défini par une table contenant # :t (ou :time) et :d (ou :description) # # La donnée doit être valide. On en profite aussi pour bien # définir le temps. # value = value_valid?(value, key) data.merge!(key => RelativePFA::Node.new(self, key, value)) elsif AbsolutePFA.data[:times].key?(key) # # Ajout d'une valeur temporelle # data.merge!(key => DataTime.new(self, key, value)) else raise PFAFatalError.new(100, **{key: ":#{key}"}) end end |