Was ich wirklich tun möchte, ist über die Schlüssel einer Zeichenkette zu iterieren. Ich benutze die new-fangled Syntax. Ich kann keine Informationen über StringMap.iter() finden, also habe ich die Syntax verwendet, die ich irgendwo für List.iter() gefunden habe. Ich glaube nicht, dass der ursprüngliche Code tatsächlich über die Schlüssel iteriert wurde, und im Moment würde ich mich damit begnügen, über die Werte zu iterieren, wenn ich das zum Funktionieren bringen könnte.Wie man über die Schlüssel in einer Zeichenkette iteriert?
Der Code Ich habe hier ist: http://pastebin.com/9HB20yzy
Ich erhalte die folgende Fehlermeldung:
Error
File "test.opa", line 23, characters 1-64, (23:1-23:64 | 472-535)
Function was found of type
(string, 'a -> void), ordered_map(string, 'a, String.order) -> void but
application expects it to be of type
(string -> xhtml), stringmap(item) -> 'b.
Types string, 'a -> void and string -> xhtml are not compatible
Hint:
Function types have different arguments arity (2 versus 1).
ich mehrere andere Methoden ausprobiert, aber sie schien die alte Syntax und nicht besonders gut harmonierten zu verwenden mit dem Compiler. Ich verstehe nicht wirklich, was dieser Fehler Voodoo mir sagt, so ist die Frage, wie verwendet man StringMap.iter()? Oder in anderer Weise über die Schlüssel in einer StringMap iterieren?
Das funktionierte, danke! Ich frage mich nur, worum es bei "[render_item (item) | acc]" geht? Sammelt das irgendwie die Ausgabe? Was genau ist das? – alkazar
acc ist ein Akkumulator der Typenliste, eine Liste von xhtml. '[e | acc] 'add' e' am Anfang der Liste 'acc'. –
http://doc.opalang.org/refcard#!/refcard/Standard-library/Containers/list –