git.postgresql.org Git - postgresql.git/commitdiff

git projects / postgresql.git / commitdiff
? search:
summary | shortlog | log | commit | commitdiff | tree
raw | patch | inline | side by side (parent: 91e7926)
Add a bit more commentary about regex's colormap tree data structure.
2015年5月24日 16:40:38 +0000 (12:40 -0400)
2015年5月24日 16:40:38 +0000 (12:40 -0400)
Per an off-list question from Piotr Stefaniak.


diff --git a/src/include/regex/regguts.h b/src/include/regex/regguts.h
index 7d5d85577d61ce9a97284269e0071d007fc0affe..2f3be1aa0ae22c52c14368f4dad9079376841ca7 100644 (file)
--- a/src/include/regex/regguts.h
+++ b/src/include/regex/regguts.h
@@ -162,6 +162,10 @@ typedef int pcolor; /* what color promotes to */
* deep (in the past it was shallower during construction but was "filled"
* to full depth at the end of that); areas that are unaltered as yet point
* to "fill blocks" which are entirely WHITE in color.
+ *
+ * Leaf-level tree blocks are of type "struct colors", while upper-level
+ * blocks are of type "struct ptrs". Pointers into the tree are generally
+ * declared as "union tree *" to be agnostic about what level they point to.
*/
/* the tree itself */
@@ -179,6 +183,7 @@ union tree
struct ptrs ptrs;
};
+/* use these pseudo-field names when dereferencing a "union tree" pointer */
#define tcolor colors.ccolor
#define tptr ptrs.pptr
This is the main PostgreSQL git repository.
RSS Atom

AltStyle によって変換されたページ (->オリジナル) /