packages feed

cmark 0.5.3.1 → 0.5.4

raw patch · 13 files changed

+360/−459 lines, 13 filesdep ~HUnitPVP ok

version bump matches the API change (PVP)

Dependency ranges changed: HUnit

API changes (from Hackage documentation)

Files

README.md view
@@ -3,8 +3,8 @@  This package provides Haskell bindings for [libcmark], the reference parser for [CommonMark], a fully specified variant of Markdown.-It includes sources for [libcmark] (version 0.26.0, implementing-version 0.26 of the spec) and does not require prior installation of+It includes sources for [libcmark] (version 0.27.0, implementing+version 0.27 of the spec) and does not require prior installation of the C library.  cmark provides the following advantages over existing Markdown
cbits/blocks.c view
@@ -563,21 +563,27 @@         cmark_strbuf_put(&parser->linebuf, buffer, chunk_len);         // add replacement character         cmark_strbuf_put(&parser->linebuf, repl, 3);-        chunk_len += 1; // so we advance the buffer past NULL       } else {         cmark_strbuf_put(&parser->linebuf, buffer, chunk_len);       }     }      buffer += chunk_len;-    // skip over line ending characters:-    if (buffer < end && *buffer == '\r') {-      buffer++;-      if (buffer == end)-        parser->last_buffer_ended_with_cr = true;+    if (buffer < end) {+      if (*buffer == '\0') {+        // skip over NULL+        buffer++;+      } else {+        // skip over line ending characters+        if (*buffer == '\r') {+          buffer++;+          if (buffer == end)+            parser->last_buffer_ended_with_cr = true;+        }+        if (*buffer == '\n')+          buffer++;+      }     }-    if (buffer < end && *buffer == '\n')-      buffer++;   } } @@ -933,10 +939,10 @@       *container = add_child(parser, *container, CMARK_NODE_THEMATIC_BREAK,                              parser->first_nonspace + 1);       S_advance_offset(parser, input, input->len - 1 - parser->offset, false);-    } else if ((matched = parse_list_marker(+    } else if ((!indented || cont_type == CMARK_NODE_LIST) &&+               (matched = parse_list_marker(                     parser->mem, input, parser->first_nonspace,-                    (*container)->type == CMARK_NODE_PARAGRAPH, &data)) &&-               (!indented || cont_type == CMARK_NODE_LIST)) {+                    (*container)->type == CMARK_NODE_PARAGRAPH, &data))) {        // Note that we can have new list items starting with >= 4       // spaces indent, as long as the list container is still open.@@ -989,7 +995,7 @@                              parser->first_nonspace + 1);       /* TODO: static */       memcpy(&((*container)->as.list), data, sizeof(*data));-      free(data);+      parser->mem->free(data);     } else if (indented && !maybe_lazy && !parser->blank) {       S_advance_offset(parser, input, CODE_INDENT, true);       *container = add_child(parser, *container, CMARK_NODE_CODE_BLOCK,
cbits/chunk.h view
@@ -50,8 +50,8 @@   cmark_chunk_rtrim(c); } -static CMARK_INLINE bufsize_t-    cmark_chunk_strchr(cmark_chunk *ch, int c, bufsize_t offset) {+static CMARK_INLINE bufsize_t cmark_chunk_strchr(cmark_chunk *ch, int c,+                                                 bufsize_t offset) {   const unsigned char *p =       (unsigned char *)memchr(ch->data + offset, c, ch->len - offset);   return p ? (bufsize_t)(p - ch->data) : ch->len;@@ -99,8 +99,8 @@   return c; } -static CMARK_INLINE cmark_chunk-    cmark_chunk_dup(const cmark_chunk *ch, bufsize_t pos, bufsize_t len) {+static CMARK_INLINE cmark_chunk cmark_chunk_dup(const cmark_chunk *ch,+                                                bufsize_t pos, bufsize_t len) {   cmark_chunk c = {ch->data + pos, len, 0};   return c; }
cbits/cmark.h view
@@ -590,13 +590,13 @@  * In hexadecimal format, the number 0x010203 represents version 1.2.3.  */ CMARK_EXPORT-int cmark_version();+int cmark_version(void);  /** The library version string for runtime checks. Also available as  * macro CMARK_VERSION_STRING for compile time checks.  */ CMARK_EXPORT-const char *cmark_version_string();+const char *cmark_version_string(void);  /** # AUTHORS  *
cbits/cmark_export.h view
@@ -33,9 +33,10 @@ #  define CMARK_DEPRECATED_NO_EXPORT CMARK_NO_EXPORT CMARK_DEPRECATED #endif -#define DEFINE_NO_DEPRECATED 0-#if DEFINE_NO_DEPRECATED-# define CMARK_NO_DEPRECATED+#if 0 /* DEFINE_NO_DEPRECATED */+#  ifndef CMARK_NO_DEPRECATED+#    define CMARK_NO_DEPRECATED+#  endif #endif  #endif
cbits/cmark_version.h view
@@ -1,7 +1,7 @@ #ifndef CMARK_VERSION_H #define CMARK_VERSION_H -#define CMARK_VERSION ((0 << 16) | (26 << 8)  | 0)-#define CMARK_VERSION_STRING "0.26.0"+#define CMARK_VERSION ((0 << 16) | (27 << 8)  | 0)+#define CMARK_VERSION_STRING "0.27.0"  #endif
cbits/entities.inc view
@@ -6,7 +6,7 @@ };  #define CMARK_ENTITY_MIN_LENGTH 2-#define CMARK_ENTITY_MAX_LENGTH 31+#define CMARK_ENTITY_MAX_LENGTH 32 #define CMARK_NUM_ENTITIES 2125  static const struct cmark_entity_node cmark_entities[] = {
cbits/houdini_html_u.c view
@@ -16,7 +16,7 @@       strncmp((const char *)s, (const char *)cmark_entities[i].entity, len);   if (cmp == 0 && cmark_entities[i].entity[len] == 0) {     return (const unsigned char *)cmark_entities[i].bytes;-  } else if (cmp < 0 && i > low) {+  } else if (cmp <= 0 && i > low) {     j = i - ((i - low) / 2);     if (j == i)       j -= 1;
cbits/inlines.c view
@@ -330,9 +330,8 @@         delimiter *delim;         delim = subj->last_delim;         while (delim != NULL) {-                printf("Item at stack pos %p, text pos %d: %d %d %d next(%p)-prev(%p)\n",-                       (void*)delim, delim->position, delim->delim_char,+                printf("Item at stack pos %p: %d %d %d next(%p) prev(%p)\n",+                       (void*)delim, delim->delim_char,                        delim->can_open, delim->can_close,                        (void*)delim->next, (void*)delim->previous);                 delim = delim->previous;@@ -353,7 +352,7 @@   if (delim->previous != NULL) {     delim->previous->next = delim->next;   }-  free(delim);+  subj->mem->free(delim); }  static void pop_bracket(subject *subj) {@@ -362,7 +361,7 @@     return;   b = subj->last_bracket;   subj->last_bracket = subj->last_bracket->previous;-  free(b);+  subj->mem->free(b); }  static void push_delimiter(subject *subj, unsigned char c, bool can_open,@@ -799,7 +798,7 @@  // Return a link, an image, or a literal close bracket. static cmark_node *handle_close_bracket(subject *subj) {-  bufsize_t initial_pos;+  bufsize_t initial_pos, after_link_text_pos;   bufsize_t starturl, endurl, starttitle, endtitle, endall;   bufsize_t n;   bufsize_t sps;@@ -833,6 +832,8 @@   // Now we check to see if it's a link/image.   is_image = opener->image; +  after_link_text_pos = subj->pos;+   // First, look for an inline link.   if (peek_char(subj) == '(' &&       ((sps = scan_spacechars(&subj->input, subj->pos + 1)) > -1) &&@@ -863,7 +864,8 @@       goto match;      } else {-      goto noMatch;+      // it could still be a shortcut reference link+      subj->pos = after_link_text_pos;     }   } 
cbits/latex.c view
@@ -180,7 +180,7 @@     link_text = node->first_child;     cmark_consolidate_text_nodes(link_text);     realurl = (char *)url;-    realurllen = url_len;+    realurllen = (int)url_len;     if (strncmp(realurl, "mailto:", 7) == 0) {       realurl += 7;       realurllen -= 7;
cbits/references.c view
@@ -46,7 +46,7 @@   assert(result);    if (result[0] == '\0') {-    free(result);+    mem->free(result);     return NULL;   } @@ -114,7 +114,7 @@     ref = ref->next;   } -  free(norm);+  map->mem->free(norm);   return ref; } @@ -135,7 +135,7 @@     }   } -  free(map);+  map->mem->free(map); }  cmark_reference_map *cmark_reference_map_new(cmark_mem *mem) {
cbits/scanners.c view
@@ -1,7 +1,7 @@ /* Generated by re2c 0.15.3 */-#include <stdlib.h>-#include "chunk.h" #include "scanners.h"+#include "chunk.h"+#include <stdlib.h>  bufsize_t _scan_at(bufsize_t (*scanner)(const unsigned char *), cmark_chunk *c,                    bufsize_t offset) {@@ -29,38 +29,30 @@   {     unsigned char yych;     yych = *(marker = p);-    if (yych <= 0x7F) {-      if (yych <= ' ') {+    if (yych <= 0xC1) {+      if (yych <= 'Z') {         if (yych == '\n')           goto yy2;-        if (yych <= 0x1F)+        if (yych <= '@')           goto yy4;         goto yy3;       } else {-        if (yych <= 'Z') {-          if (yych <= '@')-            goto yy4;+        if (yych <= '`')+          goto yy4;+        if (yych <= 'z')           goto yy3;-        } else {-          if (yych <= '`')-            goto yy4;-          if (yych <= 'z')-            goto yy3;+        if (yych <= 0x7F)           goto yy4;-        }       }     } else {       if (yych <= 0xED) {-        if (yych <= 0xDF) {-          if (yych >= 0xC2)-            goto yy5;-        } else {-          if (yych <= 0xE0)-            goto yy7;-          if (yych <= 0xEC)-            goto yy8;-          goto yy12;-        }+        if (yych <= 0xDF)+          goto yy5;+        if (yych <= 0xE0)+          goto yy7;+        if (yych <= 0xEC)+          goto yy8;+        goto yy12;       } else {         if (yych <= 0xF0) {           if (yych <= 0xEF)@@ -77,14 +69,22 @@   yy2 : { return 0; }   yy3:     yych = *(marker = ++p);-    if (yych <= '.') {-      if (yych == '+')+    if (yych <= '/') {+      if (yych <= '+') {+        if (yych <= '*')+          goto yy2;         goto yy13;-      if (yych <= ',')+      } else {+        if (yych <= ',')+          goto yy2;+        if (yych <= '.')+          goto yy13;         goto yy2;-      goto yy13;+      }     } else {       if (yych <= 'Z') {+        if (yych <= '9')+          goto yy13;         if (yych <= '@')           goto yy2;         goto yy13;@@ -153,16 +153,14 @@   yy13:     yych = *++p;     if (yych <= '9') {-      if (yych <= '+') {-        if (yych <= '*')-          goto yy6;-        goto yy16;-      } else {-        if (yych <= ',')-          goto yy6;-        if (yych <= '.')+      if (yych <= ',') {+        if (yych == '+')           goto yy16;         goto yy6;+      } else {+        if (yych == '/')+          goto yy6;+        goto yy16;       }     } else {       if (yych <= 'Z') {@@ -185,13 +183,11 @@   yy16:     yych = *++p;     if (yych <= '9') {-      if (yych <= '+') {-        if (yych <= '*')+      if (yych <= ',') {+        if (yych != '+')           goto yy6;       } else {-        if (yych <= ',')-          goto yy6;-        if (yych >= '/')+        if (yych == '/')           goto yy6;       }     } else {@@ -209,13 +205,11 @@     }     yych = *++p;     if (yych <= '9') {-      if (yych <= '+') {-        if (yych <= '*')+      if (yych <= ',') {+        if (yych != '+')           goto yy6;       } else {-        if (yych <= ',')-          goto yy6;-        if (yych >= '/')+        if (yych == '/')           goto yy6;       }     } else {@@ -233,13 +227,11 @@     }     yych = *++p;     if (yych <= '9') {-      if (yych <= '+') {-        if (yych <= '*')+      if (yych <= ',') {+        if (yych != '+')           goto yy6;       } else {-        if (yych <= ',')-          goto yy6;-        if (yych >= '/')+        if (yych == '/')           goto yy6;       }     } else {@@ -257,13 +249,11 @@     }     yych = *++p;     if (yych <= '9') {-      if (yych <= '+') {-        if (yych <= '*')+      if (yych <= ',') {+        if (yych != '+')           goto yy6;       } else {-        if (yych <= ',')-          goto yy6;-        if (yych >= '/')+        if (yych == '/')           goto yy6;       }     } else {@@ -281,13 +271,11 @@     }     yych = *++p;     if (yych <= '9') {-      if (yych <= '+') {-        if (yych <= '*')+      if (yych <= ',') {+        if (yych != '+')           goto yy6;       } else {-        if (yych <= ',')-          goto yy6;-        if (yych >= '/')+        if (yych == '/')           goto yy6;       }     } else {@@ -305,13 +293,11 @@     }     yych = *++p;     if (yych <= '9') {-      if (yych <= '+') {-        if (yych <= '*')+      if (yych <= ',') {+        if (yych != '+')           goto yy6;       } else {-        if (yych <= ',')-          goto yy6;-        if (yych >= '/')+        if (yych == '/')           goto yy6;       }     } else {@@ -329,13 +315,11 @@     }     yych = *++p;     if (yych <= '9') {-      if (yych <= '+') {-        if (yych <= '*')+      if (yych <= ',') {+        if (yych != '+')           goto yy6;       } else {-        if (yych <= ',')-          goto yy6;-        if (yych >= '/')+        if (yych == '/')           goto yy6;       }     } else {@@ -353,13 +337,11 @@     }     yych = *++p;     if (yych <= '9') {-      if (yych <= '+') {-        if (yych <= '*')+      if (yych <= ',') {+        if (yych != '+')           goto yy6;       } else {-        if (yych <= ',')-          goto yy6;-        if (yych >= '/')+        if (yych == '/')           goto yy6;       }     } else {@@ -377,13 +359,11 @@     }     yych = *++p;     if (yych <= '9') {-      if (yych <= '+') {-        if (yych <= '*')+      if (yych <= ',') {+        if (yych != '+')           goto yy6;       } else {-        if (yych <= ',')-          goto yy6;-        if (yych >= '/')+        if (yych == '/')           goto yy6;       }     } else {@@ -401,13 +381,11 @@     }     yych = *++p;     if (yych <= '9') {-      if (yych <= '+') {-        if (yych <= '*')+      if (yych <= ',') {+        if (yych != '+')           goto yy6;       } else {-        if (yych <= ',')-          goto yy6;-        if (yych >= '/')+        if (yych == '/')           goto yy6;       }     } else {@@ -425,13 +403,11 @@     }     yych = *++p;     if (yych <= '9') {-      if (yych <= '+') {-        if (yych <= '*')+      if (yych <= ',') {+        if (yych != '+')           goto yy6;       } else {-        if (yych <= ',')-          goto yy6;-        if (yych >= '/')+        if (yych == '/')           goto yy6;       }     } else {@@ -449,13 +425,11 @@     }     yych = *++p;     if (yych <= '9') {-      if (yych <= '+') {-        if (yych <= '*')+      if (yych <= ',') {+        if (yych != '+')           goto yy6;       } else {-        if (yych <= ',')-          goto yy6;-        if (yych >= '/')+        if (yych == '/')           goto yy6;       }     } else {@@ -473,13 +447,11 @@     }     yych = *++p;     if (yych <= '9') {-      if (yych <= '+') {-        if (yych <= '*')+      if (yych <= ',') {+        if (yych != '+')           goto yy6;       } else {-        if (yych <= ',')-          goto yy6;-        if (yych >= '/')+        if (yych == '/')           goto yy6;       }     } else {@@ -497,13 +469,11 @@     }     yych = *++p;     if (yych <= '9') {-      if (yych <= '+') {-        if (yych <= '*')+      if (yych <= ',') {+        if (yych != '+')           goto yy6;       } else {-        if (yych <= ',')-          goto yy6;-        if (yych >= '/')+        if (yych == '/')           goto yy6;       }     } else {@@ -521,13 +491,11 @@     }     yych = *++p;     if (yych <= '9') {-      if (yych <= '+') {-        if (yych <= '*')+      if (yych <= ',') {+        if (yych != '+')           goto yy6;       } else {-        if (yych <= ',')-          goto yy6;-        if (yych >= '/')+        if (yych == '/')           goto yy6;       }     } else {@@ -545,13 +513,11 @@     }     yych = *++p;     if (yych <= '9') {-      if (yych <= '+') {-        if (yych <= '*')+      if (yych <= ',') {+        if (yych != '+')           goto yy6;       } else {-        if (yych <= ',')-          goto yy6;-        if (yych >= '/')+        if (yych == '/')           goto yy6;       }     } else {@@ -569,13 +535,11 @@     }     yych = *++p;     if (yych <= '9') {-      if (yych <= '+') {-        if (yych <= '*')+      if (yych <= ',') {+        if (yych != '+')           goto yy6;       } else {-        if (yych <= ',')-          goto yy6;-        if (yych >= '/')+        if (yych == '/')           goto yy6;       }     } else {@@ -593,13 +557,11 @@     }     yych = *++p;     if (yych <= '9') {-      if (yych <= '+') {-        if (yych <= '*')+      if (yych <= ',') {+        if (yych != '+')           goto yy6;       } else {-        if (yych <= ',')-          goto yy6;-        if (yych >= '/')+        if (yych == '/')           goto yy6;       }     } else {@@ -617,13 +579,11 @@     }     yych = *++p;     if (yych <= '9') {-      if (yych <= '+') {-        if (yych <= '*')+      if (yych <= ',') {+        if (yych != '+')           goto yy6;       } else {-        if (yych <= ',')-          goto yy6;-        if (yych >= '/')+        if (yych == '/')           goto yy6;       }     } else {@@ -641,13 +601,11 @@     }     yych = *++p;     if (yych <= '9') {-      if (yych <= '+') {-        if (yych <= '*')+      if (yych <= ',') {+        if (yych != '+')           goto yy6;       } else {-        if (yych <= ',')-          goto yy6;-        if (yych >= '/')+        if (yych == '/')           goto yy6;       }     } else {@@ -665,13 +623,11 @@     }     yych = *++p;     if (yych <= '9') {-      if (yych <= '+') {-        if (yych <= '*')+      if (yych <= ',') {+        if (yych != '+')           goto yy6;       } else {-        if (yych <= ',')-          goto yy6;-        if (yych >= '/')+        if (yych == '/')           goto yy6;       }     } else {@@ -689,13 +645,11 @@     }     yych = *++p;     if (yych <= '9') {-      if (yych <= '+') {-        if (yych <= '*')+      if (yych <= ',') {+        if (yych != '+')           goto yy6;       } else {-        if (yych <= ',')-          goto yy6;-        if (yych >= '/')+        if (yych == '/')           goto yy6;       }     } else {@@ -713,13 +667,11 @@     }     yych = *++p;     if (yych <= '9') {-      if (yych <= '+') {-        if (yych <= '*')+      if (yych <= ',') {+        if (yych != '+')           goto yy6;       } else {-        if (yych <= ',')-          goto yy6;-        if (yych >= '/')+        if (yych == '/')           goto yy6;       }     } else {@@ -737,13 +689,11 @@     }     yych = *++p;     if (yych <= '9') {-      if (yych <= '+') {-        if (yych <= '*')+      if (yych <= ',') {+        if (yych != '+')           goto yy6;       } else {-        if (yych <= ',')-          goto yy6;-        if (yych >= '/')+        if (yych == '/')           goto yy6;       }     } else {@@ -761,13 +711,11 @@     }     yych = *++p;     if (yych <= '9') {-      if (yych <= '+') {-        if (yych <= '*')+      if (yych <= ',') {+        if (yych != '+')           goto yy6;       } else {-        if (yych <= ',')-          goto yy6;-        if (yych >= '/')+        if (yych == '/')           goto yy6;       }     } else {@@ -785,13 +733,11 @@     }     yych = *++p;     if (yych <= '9') {-      if (yych <= '+') {-        if (yych <= '*')+      if (yych <= ',') {+        if (yych != '+')           goto yy6;       } else {-        if (yych <= ',')-          goto yy6;-        if (yych >= '/')+        if (yych == '/')           goto yy6;       }     } else {@@ -809,13 +755,11 @@     }     yych = *++p;     if (yych <= '9') {-      if (yych <= '+') {-        if (yych <= '*')+      if (yych <= ',') {+        if (yych != '+')           goto yy6;       } else {-        if (yych <= ',')-          goto yy6;-        if (yych >= '/')+        if (yych == '/')           goto yy6;       }     } else {@@ -833,13 +777,11 @@     }     yych = *++p;     if (yych <= '9') {-      if (yych <= '+') {-        if (yych <= '*')+      if (yych <= ',') {+        if (yych != '+')           goto yy6;       } else {-        if (yych <= ',')-          goto yy6;-        if (yych >= '/')+        if (yych == '/')           goto yy6;       }     } else {@@ -857,13 +799,11 @@     }     yych = *++p;     if (yych <= '9') {-      if (yych <= '+') {-        if (yych <= '*')+      if (yych <= ',') {+        if (yych != '+')           goto yy6;       } else {-        if (yych <= ',')-          goto yy6;-        if (yych >= '/')+        if (yych == '/')           goto yy6;       }     } else {@@ -915,38 +855,30 @@         0,   0,   0,   0,     };     yych = *(marker = p);-    if (yych <= 0x7F) {-      if (yych <= ' ') {+    if (yych <= 0xC1) {+      if (yych <= 'Z') {         if (yych == '\n')           goto yy48;-        if (yych <= 0x1F)+        if (yych <= '@')           goto yy50;         goto yy49;       } else {-        if (yych <= 'Z') {-          if (yych <= '@')-            goto yy50;+        if (yych <= '`')+          goto yy50;+        if (yych <= 'z')           goto yy49;-        } else {-          if (yych <= '`')-            goto yy50;-          if (yych <= 'z')-            goto yy49;+        if (yych <= 0x7F)           goto yy50;-        }       }     } else {       if (yych <= 0xED) {-        if (yych <= 0xDF) {-          if (yych >= 0xC2)-            goto yy51;-        } else {-          if (yych <= 0xE0)-            goto yy53;-          if (yych <= 0xEC)-            goto yy54;-          goto yy58;-        }+        if (yych <= 0xDF)+          goto yy51;+        if (yych <= 0xE0)+          goto yy53;+        if (yych <= 0xEC)+          goto yy54;+        goto yy58;       } else {         if (yych <= 0xF0) {           if (yych <= 0xEF)@@ -963,14 +895,22 @@   yy48 : { return 0; }   yy49:     yych = *(marker = ++p);-    if (yych <= '.') {-      if (yych == '+')+    if (yych <= '/') {+      if (yych <= '+') {+        if (yych <= '*')+          goto yy48;         goto yy59;-      if (yych <= ',')+      } else {+        if (yych <= ',')+          goto yy48;+        if (yych <= '.')+          goto yy59;         goto yy48;-      goto yy59;+      }     } else {       if (yych <= 'Z') {+        if (yych <= '9')+          goto yy59;         if (yych <= '@')           goto yy48;         goto yy59;@@ -1039,16 +979,14 @@   yy59:     yych = *++p;     if (yych <= '9') {-      if (yych <= '+') {-        if (yych <= '*')-          goto yy52;-        goto yy62;-      } else {-        if (yych <= ',')-          goto yy52;-        if (yych <= '.')+      if (yych <= ',') {+        if (yych == '+')           goto yy62;         goto yy52;+      } else {+        if (yych == '/')+          goto yy52;+        goto yy62;       }     } else {       if (yych <= 'Z') {@@ -1103,13 +1041,11 @@   yy62:     yych = *++p;     if (yych <= '9') {-      if (yych <= '+') {-        if (yych <= '*')+      if (yych <= ',') {+        if (yych != '+')           goto yy52;       } else {-        if (yych <= ',')-          goto yy52;-        if (yych >= '/')+        if (yych == '/')           goto yy52;       }     } else {@@ -1127,13 +1063,11 @@     }     yych = *++p;     if (yych <= '9') {-      if (yych <= '+') {-        if (yych <= '*')+      if (yych <= ',') {+        if (yych != '+')           goto yy52;       } else {-        if (yych <= ',')-          goto yy52;-        if (yych >= '/')+        if (yych == '/')           goto yy52;       }     } else {@@ -1151,13 +1085,11 @@     }     yych = *++p;     if (yych <= '9') {-      if (yych <= '+') {-        if (yych <= '*')+      if (yych <= ',') {+        if (yych != '+')           goto yy52;       } else {-        if (yych <= ',')-          goto yy52;-        if (yych >= '/')+        if (yych == '/')           goto yy52;       }     } else {@@ -1175,13 +1107,11 @@     }     yych = *++p;     if (yych <= '9') {-      if (yych <= '+') {-        if (yych <= '*')+      if (yych <= ',') {+        if (yych != '+')           goto yy52;       } else {-        if (yych <= ',')-          goto yy52;-        if (yych >= '/')+        if (yych == '/')           goto yy52;       }     } else {@@ -1199,13 +1129,11 @@     }     yych = *++p;     if (yych <= '9') {-      if (yych <= '+') {-        if (yych <= '*')+      if (yych <= ',') {+        if (yych != '+')           goto yy52;       } else {-        if (yych <= ',')-          goto yy52;-        if (yych >= '/')+        if (yych == '/')           goto yy52;       }     } else {@@ -1223,13 +1151,11 @@     }     yych = *++p;     if (yych <= '9') {-      if (yych <= '+') {-        if (yych <= '*')+      if (yych <= ',') {+        if (yych != '+')           goto yy52;       } else {-        if (yych <= ',')-          goto yy52;-        if (yych >= '/')+        if (yych == '/')           goto yy52;       }     } else {@@ -1247,13 +1173,11 @@     }     yych = *++p;     if (yych <= '9') {-      if (yych <= '+') {-        if (yych <= '*')+      if (yych <= ',') {+        if (yych != '+')           goto yy52;       } else {-        if (yych <= ',')-          goto yy52;-        if (yych >= '/')+        if (yych == '/')           goto yy52;       }     } else {@@ -1271,13 +1195,11 @@     }     yych = *++p;     if (yych <= '9') {-      if (yych <= '+') {-        if (yych <= '*')+      if (yych <= ',') {+        if (yych != '+')           goto yy52;       } else {-        if (yych <= ',')-          goto yy52;-        if (yych >= '/')+        if (yych == '/')           goto yy52;       }     } else {@@ -1295,13 +1217,11 @@     }     yych = *++p;     if (yych <= '9') {-      if (yych <= '+') {-        if (yych <= '*')+      if (yych <= ',') {+        if (yych != '+')           goto yy52;       } else {-        if (yych <= ',')-          goto yy52;-        if (yych >= '/')+        if (yych == '/')           goto yy52;       }     } else {@@ -1319,13 +1239,11 @@     }     yych = *++p;     if (yych <= '9') {-      if (yych <= '+') {-        if (yych <= '*')+      if (yych <= ',') {+        if (yych != '+')           goto yy52;       } else {-        if (yych <= ',')-          goto yy52;-        if (yych >= '/')+        if (yych == '/')           goto yy52;       }     } else {@@ -1343,13 +1261,11 @@     }     yych = *++p;     if (yych <= '9') {-      if (yych <= '+') {-        if (yych <= '*')+      if (yych <= ',') {+        if (yych != '+')           goto yy52;       } else {-        if (yych <= ',')-          goto yy52;-        if (yych >= '/')+        if (yych == '/')           goto yy52;       }     } else {@@ -1367,13 +1283,11 @@     }     yych = *++p;     if (yych <= '9') {-      if (yych <= '+') {-        if (yych <= '*')+      if (yych <= ',') {+        if (yych != '+')           goto yy52;       } else {-        if (yych <= ',')-          goto yy52;-        if (yych >= '/')+        if (yych == '/')           goto yy52;       }     } else {@@ -1391,13 +1305,11 @@     }     yych = *++p;     if (yych <= '9') {-      if (yych <= '+') {-        if (yych <= '*')+      if (yych <= ',') {+        if (yych != '+')           goto yy52;       } else {-        if (yych <= ',')-          goto yy52;-        if (yych >= '/')+        if (yych == '/')           goto yy52;       }     } else {@@ -1415,13 +1327,11 @@     }     yych = *++p;     if (yych <= '9') {-      if (yych <= '+') {-        if (yych <= '*')+      if (yych <= ',') {+        if (yych != '+')           goto yy52;       } else {-        if (yych <= ',')-          goto yy52;-        if (yych >= '/')+        if (yych == '/')           goto yy52;       }     } else {@@ -1439,13 +1349,11 @@     }     yych = *++p;     if (yych <= '9') {-      if (yych <= '+') {-        if (yych <= '*')+      if (yych <= ',') {+        if (yych != '+')           goto yy52;       } else {-        if (yych <= ',')-          goto yy52;-        if (yych >= '/')+        if (yych == '/')           goto yy52;       }     } else {@@ -1463,13 +1371,11 @@     }     yych = *++p;     if (yych <= '9') {-      if (yych <= '+') {-        if (yych <= '*')+      if (yych <= ',') {+        if (yych != '+')           goto yy52;       } else {-        if (yych <= ',')-          goto yy52;-        if (yych >= '/')+        if (yych == '/')           goto yy52;       }     } else {@@ -1487,13 +1393,11 @@     }     yych = *++p;     if (yych <= '9') {-      if (yych <= '+') {-        if (yych <= '*')+      if (yych <= ',') {+        if (yych != '+')           goto yy52;       } else {-        if (yych <= ',')-          goto yy52;-        if (yych >= '/')+        if (yych == '/')           goto yy52;       }     } else {@@ -1511,13 +1415,11 @@     }     yych = *++p;     if (yych <= '9') {-      if (yych <= '+') {-        if (yych <= '*')+      if (yych <= ',') {+        if (yych != '+')           goto yy52;       } else {-        if (yych <= ',')-          goto yy52;-        if (yych >= '/')+        if (yych == '/')           goto yy52;       }     } else {@@ -1535,13 +1437,11 @@     }     yych = *++p;     if (yych <= '9') {-      if (yych <= '+') {-        if (yych <= '*')+      if (yych <= ',') {+        if (yych != '+')           goto yy52;       } else {-        if (yych <= ',')-          goto yy52;-        if (yych >= '/')+        if (yych == '/')           goto yy52;       }     } else {@@ -1559,13 +1459,11 @@     }     yych = *++p;     if (yych <= '9') {-      if (yych <= '+') {-        if (yych <= '*')+      if (yych <= ',') {+        if (yych != '+')           goto yy52;       } else {-        if (yych <= ',')-          goto yy52;-        if (yych >= '/')+        if (yych == '/')           goto yy52;       }     } else {@@ -1583,13 +1481,11 @@     }     yych = *++p;     if (yych <= '9') {-      if (yych <= '+') {-        if (yych <= '*')+      if (yych <= ',') {+        if (yych != '+')           goto yy52;       } else {-        if (yych <= ',')-          goto yy52;-        if (yych >= '/')+        if (yych == '/')           goto yy52;       }     } else {@@ -1607,13 +1503,11 @@     }     yych = *++p;     if (yych <= '9') {-      if (yych <= '+') {-        if (yych <= '*')+      if (yych <= ',') {+        if (yych != '+')           goto yy52;       } else {-        if (yych <= ',')-          goto yy52;-        if (yych >= '/')+        if (yych == '/')           goto yy52;       }     } else {@@ -1631,13 +1525,11 @@     }     yych = *++p;     if (yych <= '9') {-      if (yych <= '+') {-        if (yych <= '*')+      if (yych <= ',') {+        if (yych != '+')           goto yy52;       } else {-        if (yych <= ',')-          goto yy52;-        if (yych >= '/')+        if (yych == '/')           goto yy52;       }     } else {@@ -1655,13 +1547,11 @@     }     yych = *++p;     if (yych <= '9') {-      if (yych <= '+') {-        if (yych <= '*')+      if (yych <= ',') {+        if (yych != '+')           goto yy52;       } else {-        if (yych <= ',')-          goto yy52;-        if (yych >= '/')+        if (yych == '/')           goto yy52;       }     } else {@@ -1679,13 +1569,11 @@     }     yych = *++p;     if (yych <= '9') {-      if (yych <= '+') {-        if (yych <= '*')+      if (yych <= ',') {+        if (yych != '+')           goto yy52;       } else {-        if (yych <= ',')-          goto yy52;-        if (yych >= '/')+        if (yych == '/')           goto yy52;       }     } else {@@ -1703,13 +1591,11 @@     }     yych = *++p;     if (yych <= '9') {-      if (yych <= '+') {-        if (yych <= '*')+      if (yych <= ',') {+        if (yych != '+')           goto yy52;       } else {-        if (yych <= ',')-          goto yy52;-        if (yych >= '/')+        if (yych == '/')           goto yy52;       }     } else {@@ -1727,13 +1613,11 @@     }     yych = *++p;     if (yych <= '9') {-      if (yych <= '+') {-        if (yych <= '*')+      if (yych <= ',') {+        if (yych != '+')           goto yy52;       } else {-        if (yych <= ',')-          goto yy52;-        if (yych >= '/')+        if (yych == '/')           goto yy52;       }     } else {@@ -1751,13 +1635,11 @@     }     yych = *++p;     if (yych <= '9') {-      if (yych <= '+') {-        if (yych <= '*')+      if (yych <= ',') {+        if (yych != '+')           goto yy52;       } else {-        if (yych <= ',')-          goto yy52;-        if (yych >= '/')+        if (yych == '/')           goto yy52;       }     } else {@@ -1775,13 +1657,11 @@     }     yych = *++p;     if (yych <= '9') {-      if (yych <= '+') {-        if (yych <= '*')+      if (yych <= ',') {+        if (yych != '+')           goto yy52;       } else {-        if (yych <= ',')-          goto yy52;-        if (yych >= '/')+        if (yych == '/')           goto yy52;       }     } else {@@ -8258,45 +8138,37 @@     unsigned char yych;     static const unsigned char yybm[] = {         /* table 1 .. 8: 0 */-        0,   230, 230, 230, 230, 230, 230, 230, 230, 199, 199, 199, 199, 199,+        0, 230, 230, 230, 230, 230, 230, 230, 230, 199, 199, 199, 199, 199, 230,         230, 230, 230, 230, 230, 230, 230, 230, 230, 230, 230, 230, 230, 230,-        230, 230, 230, 230, 199, 230, 70,  230, 230, 230, 230, 134, 230, 230,-        230, 230, 230, 254, 246, 230, 254, 254, 254, 254, 254, 254, 254, 254,-        254, 254, 246, 230, 198, 198, 196, 230, 230, 254, 254, 254, 254, 254,+        230, 230, 230, 199, 230, 70, 230, 230, 230, 230, 134, 230, 230, 230,+        230, 230, 254, 246, 230, 254, 254, 254, 254, 254, 254, 254, 254, 254,+        254, 246, 230, 198, 198, 196, 230, 230, 254, 254, 254, 254, 254, 254,         254, 254, 254, 254, 254, 254, 254, 254, 254, 254, 254, 254, 254, 254,-        254, 254, 254, 254, 254, 254, 254, 230, 230, 226, 230, 246, 198, 254,+        254, 254, 254, 254, 254, 254, 230, 230, 226, 230, 246, 198, 254, 254,         254, 254, 254, 254, 254, 254, 254, 254, 254, 254, 254, 254, 254, 254,-        254, 254, 254, 254, 254, 254, 254, 254, 254, 254, 254, 230, 230, 230,-        230, 230, 0,   0,   0,   0,   0,   0,   0,   0,   0,   0,   0,   0,-        0,   0,   0,   0,   0,   0,   0,   0,   0,   0,   0,   0,   0,   0,-        0,   0,   0,   0,   0,   0,   0,   0,   0,   0,   0,   0,   0,   0,-        0,   0,   0,   0,   0,   0,   0,   0,   0,   0,   0,   0,   0,   0,-        0,   0,   0,   0,   0,   0,   0,   0,   0,   0,   0,   0,   0,   0,-        0,   0,   0,   0,   0,   0,   0,   0,   0,   0,   0,   0,   0,   0,-        0,   0,   0,   0,   0,   0,   0,   0,   0,   0,   0,   0,   0,   0,-        0,   0,   0,   0,   0,   0,   0,   0,   0,   0,   0,   0,   0,   0,-        0,   0,   0,   0,   0,   0,   0,   0,   0,   0,   0,   0,   0,   0,-        0,   0,   0,   0,+        254, 254, 254, 254, 254, 254, 254, 254, 254, 254, 230, 230, 230, 230,+        230, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+        0, 0, 0, 0, 0, 0, 0, 0, 0, 0,         /* table 9 .. 11: 256 */-        0,   160, 160, 160, 160, 160, 160, 160, 160, 160, 160, 160, 160, 160,+        0, 160, 160, 160, 160, 160, 160, 160, 160, 160, 160, 160, 160, 160, 160,         160, 160, 160, 160, 160, 160, 160, 160, 160, 160, 160, 160, 160, 160,         160, 160, 160, 160, 160, 160, 160, 160, 160, 160, 160, 160, 160, 160,-        160, 160, 160, 32,  160, 160, 160, 160, 160, 160, 160, 160, 160, 160,-        160, 160, 160, 160, 160, 160, 160, 128, 160, 224, 224, 224, 224, 224,+        160, 160, 32, 160, 160, 160, 160, 160, 160, 160, 160, 160, 160, 160,+        160, 160, 160, 160, 160, 160, 128, 160, 224, 224, 224, 224, 224, 224,         224, 224, 224, 224, 224, 224, 224, 224, 224, 224, 224, 224, 224, 224,-        224, 224, 224, 224, 224, 224, 224, 160, 160, 160, 160, 160, 160, 160,+        224, 224, 224, 224, 224, 224, 160, 160, 160, 160, 160, 160, 160, 160,         160, 160, 160, 160, 160, 160, 160, 160, 160, 160, 160, 160, 160, 160,         160, 160, 160, 160, 160, 160, 160, 160, 160, 160, 160, 160, 160, 160,-        160, 160, 0,   0,   0,   0,   0,   0,   0,   0,   0,   0,   0,   0,-        0,   0,   0,   0,   0,   0,   0,   0,   0,   0,   0,   0,   0,   0,-        0,   0,   0,   0,   0,   0,   0,   0,   0,   0,   0,   0,   0,   0,-        0,   0,   0,   0,   0,   0,   0,   0,   0,   0,   0,   0,   0,   0,-        0,   0,   0,   0,   0,   0,   0,   0,   0,   0,   0,   0,   0,   0,-        0,   0,   0,   0,   0,   0,   0,   0,   0,   0,   0,   0,   0,   0,-        0,   0,   0,   0,   0,   0,   0,   0,   0,   0,   0,   0,   0,   0,-        0,   0,   0,   0,   0,   0,   0,   0,   0,   0,   0,   0,   0,   0,-        0,   0,   0,   0,   0,   0,   0,   0,   0,   0,   0,   0,   0,   0,-        0,   0,   0,   0,+        160, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,+        0, 0, 0, 0, 0, 0, 0, 0, 0, 0,     };     yych = *(marker = p);     if (yych <= '`') {@@ -10582,7 +10454,9 @@     yych = *++p;     if (yych <= 'S') {       if (yych <= 'D') {-        if (yych == '1')+        if (yych <= '0')+          goto yy525;+        if (yych <= '6')           goto yy564;         goto yy525;       } else {@@ -18464,18 +18338,18 @@   {     unsigned char yych;     static const unsigned char yybm[] = {-        0, 0,  0, 0, 0, 0, 0, 0, 0, 0, 0,  0, 0, 0, 0, 0, 0, 0,   0, 0, 0, 0,-        0, 0,  0, 0, 0, 0, 0, 0, 0, 0, 32, 0, 0, 0, 0, 0, 0, 0,   0, 0, 0, 0,-        0, 64, 0, 0, 0, 0, 0, 0, 0, 0, 0,  0, 0, 0, 0, 0, 0, 128, 0, 0, 0, 0,-        0, 0,  0, 0, 0, 0, 0, 0, 0, 0, 0,  0, 0, 0, 0, 0, 0, 0,   0, 0, 0, 0,-        0, 0,  0, 0, 0, 0, 0, 0, 0, 0, 0,  0, 0, 0, 0, 0, 0, 0,   0, 0, 0, 0,-        0, 0,  0, 0, 0, 0, 0, 0, 0, 0, 0,  0, 0, 0, 0, 0, 0, 0,   0, 0, 0, 0,-        0, 0,  0, 0, 0, 0, 0, 0, 0, 0, 0,  0, 0, 0, 0, 0, 0, 0,   0, 0, 0, 0,-        0, 0,  0, 0, 0, 0, 0, 0, 0, 0, 0,  0, 0, 0, 0, 0, 0, 0,   0, 0, 0, 0,-        0, 0,  0, 0, 0, 0, 0, 0, 0, 0, 0,  0, 0, 0, 0, 0, 0, 0,   0, 0, 0, 0,-        0, 0,  0, 0, 0, 0, 0, 0, 0, 0, 0,  0, 0, 0, 0, 0, 0, 0,   0, 0, 0, 0,-        0, 0,  0, 0, 0, 0, 0, 0, 0, 0, 0,  0, 0, 0, 0, 0, 0, 0,   0, 0, 0, 0,-        0, 0,  0, 0, 0, 0, 0, 0, 0, 0, 0,  0, 0, 0,+        0, 0,  0, 0, 0, 0, 0, 0, 0, 32, 0,  0, 0, 0, 0, 0, 0, 0,   0, 0, 0, 0,+        0, 0,  0, 0, 0, 0, 0, 0, 0, 0,  32, 0, 0, 0, 0, 0, 0, 0,   0, 0, 0, 0,+        0, 64, 0, 0, 0, 0, 0, 0, 0, 0,  0,  0, 0, 0, 0, 0, 0, 128, 0, 0, 0, 0,+        0, 0,  0, 0, 0, 0, 0, 0, 0, 0,  0,  0, 0, 0, 0, 0, 0, 0,   0, 0, 0, 0,+        0, 0,  0, 0, 0, 0, 0, 0, 0, 0,  0,  0, 0, 0, 0, 0, 0, 0,   0, 0, 0, 0,+        0, 0,  0, 0, 0, 0, 0, 0, 0, 0,  0,  0, 0, 0, 0, 0, 0, 0,   0, 0, 0, 0,+        0, 0,  0, 0, 0, 0, 0, 0, 0, 0,  0,  0, 0, 0, 0, 0, 0, 0,   0, 0, 0, 0,+        0, 0,  0, 0, 0, 0, 0, 0, 0, 0,  0,  0, 0, 0, 0, 0, 0, 0,   0, 0, 0, 0,+        0, 0,  0, 0, 0, 0, 0, 0, 0, 0,  0,  0, 0, 0, 0, 0, 0, 0,   0, 0, 0, 0,+        0, 0,  0, 0, 0, 0, 0, 0, 0, 0,  0,  0, 0, 0, 0, 0, 0, 0,   0, 0, 0, 0,+        0, 0,  0, 0, 0, 0, 0, 0, 0, 0,  0,  0, 0, 0, 0, 0, 0, 0,   0, 0, 0, 0,+        0, 0,  0, 0, 0, 0, 0, 0, 0, 0,  0,  0, 0, 0,     };     yych = *(marker = p);     if (yych <= 0xC1) {@@ -18520,30 +18394,34 @@       goto yy1201;     }     if (yych <= '\f') {-      if (yych == '\n')-        goto yy1199;+      if (yych <= 0x08)+        goto yy1179;+      if (yych <= '\n')+        goto yy1198;       goto yy1179;     } else {       if (yych <= '\r')-        goto yy1199;+        goto yy1198;       if (yych == ' ')-        goto yy1197;+        goto yy1198;       goto yy1179;     }   yy1181:     yych = *(marker = ++p);-    if (yybm[0 + yych] & 32) {-      goto yy1191;+    if (yybm[0 + yych] & 64) {+      goto yy1195;     }     if (yych <= '\f') {-      if (yych == '\n')-        goto yy1193;+      if (yych <= 0x08)+        goto yy1179;+      if (yych <= '\n')+        goto yy1192;       goto yy1179;     } else {       if (yych <= '\r')-        goto yy1193;-      if (yych == '-')-        goto yy1195;+        goto yy1192;+      if (yych == ' ')+        goto yy1192;       goto yy1179;     }   yy1182:@@ -18603,10 +18481,13 @@   yy1191:     ++p;     yych = *p;+  yy1192:     if (yybm[0 + yych] & 32) {       goto yy1191;     }-    if (yych == '\n')+    if (yych <= 0x08)+      goto yy1184;+    if (yych <= '\n')       goto yy1193;     if (yych != '\r')       goto yy1184;@@ -18620,7 +18501,9 @@       goto yy1191;     }     if (yych <= '\f') {-      if (yych == '\n')+      if (yych <= 0x08)+        goto yy1184;+      if (yych <= '\n')         goto yy1193;       goto yy1184;     } else {@@ -18633,9 +18516,14 @@   yy1197:     ++p;     yych = *p;+  yy1198:     if (yych <= '\f') {-      if (yych != '\n')+      if (yych <= 0x08)         goto yy1184;+      if (yych <= '\t')+        goto yy1197;+      if (yych >= '\v')+        goto yy1184;     } else {       if (yych <= '\r')         goto yy1199;@@ -18653,7 +18541,11 @@       goto yy1201;     }     if (yych <= '\f') {-      if (yych == '\n')+      if (yych <= 0x08)+        goto yy1184;+      if (yych <= '\t')+        goto yy1197;+      if (yych <= '\n')         goto yy1199;       goto yy1184;     } else {
cmark.cabal view
@@ -1,5 +1,5 @@ name:                cmark-version:             0.5.3.1+version:             0.5.4 synopsis:            Fast, accurate CommonMark (Markdown) parser and renderer description:   This package provides Haskell bindings for@@ -9,7 +9,7 @@   libcmark (0.26.0) and does not require prior installation of the   C library. -homepage:            https://github.com/jgm/commonmark-hs+homepage:            https://github.com/jgm/cmark-hs license:             BSD3 license-file:        LICENSE author:              John MacFarlane@@ -104,6 +104,6 @@   type:           exitcode-stdio-1.0   main-is:        test-cmark.hs   hs-source-dirs: test-  build-depends:  base, cmark, text, HUnit >= 1.2 && < 1.4+  build-depends:  base, cmark, text, HUnit >= 1.2 && < 1.6   ghc-options:    -Wall -fno-warn-unused-do-bind -threaded   default-language: Haskell98