… about fields order when deserializing.
…r_cases reduces by a factor N, where N is the total number of field is the sum type by pre-computing inconsitent fields inside the inner loop
…and refactor with environment depthness limitation to regroup all ad-hoc transformation
the class_merge function (which can be called a number of time proportional to the sum type size), was for each field of the class : -flattening the main type, -then linear searching the right sum case, -then searching the field type, now each operation is done once when the information (ty,class,field) is available and the linear search has been replace by index intersection reduction is at least proportional to the size of the sum type
… behaviour of get_headers and fix is_secured comment
…y call a subparser with parameter
… times' with a location hint
…c, and activate warnings
…h '*', '+' used with non progressing parser when '*' and '+' construct were used with non progressing rules, the old behaviour was too loop the new behaviour is to detect such situation and to finish the '*' and '+' construct with proper status for instance with: many_a = parser .* -> void many_ab = parser many_a* "b" -> void before: the parser many_a can always be successful by parsing nothing so the parser many_ab applies repeatedly with success the parser many_a at the start of the input in loop now: when no progress is made in a repeating construction ('+','*'), the construction is done
This reverts commit c5d1e28.
no reason to @publish in stdlib: e.g. for an authentified chat, better to expose only add or broadcast functions with access control provide a dummy client implementation of on_remove (e.g. to allow client networks)