Skip to content

Commit d59e659

Browse files
committed
Emit links to all availbale manual pages. Updated things from latest registry.
1 parent 11e2281 commit d59e659

File tree

6 files changed

+397
-396
lines changed

6 files changed

+397
-396
lines changed

RegistryProcessor/src/Main.hs

Lines changed: 8 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -208,7 +208,7 @@ showCommand :: API -> Command -> String
208208
showCommand api c =
209209
showString (take 80 ("-- " ++ name ++ " " ++ repeat '-') ++ "\n\n") .
210210

211-
showString url .
211+
showString man .
212212

213213
showString (name ++ "\n") .
214214
showString (" :: " ++ signature True) .
@@ -233,9 +233,13 @@ showCommand api c =
233233
L.intercalate ((if withComment then " " else "") ++ " -> ")
234234
([showSignatureElement withComment False t | t <- paramTypes c] ++
235235
[showSignatureElement withComment True (resultType c)])
236-
url = maybe "" (\u -> "-- | Manual page: <" ++ u ++ ">\n") $
237-
M.lookup (api, CommandName name) manPageURLs
238-
236+
urls = M.findWithDefault [] (api, CommandName name) manPageURLs
237+
links = L.intercalate ", " (map renderURL urls) ++ "\n"
238+
man = case urls of
239+
[] -> ""
240+
[_] -> "-- | Manual page: " ++ links
241+
_ -> "-- | Manual pages: " ++ links
242+
renderURL u = "<" ++ u ++ ">"
239243

240244
showSignatureElement :: Bool -> Bool -> SignatureElement -> String
241245
showSignatureElement withComment isResult sigElem = el ++ comment

RegistryProcessor/src/ManPages.hs

Lines changed: 16 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -8,9 +8,9 @@ import MangledRegistry ( API(..), CommandName(..) )
88
type ManPageKey = (API, CommandName)
99
type URL = String
1010

11-
assocsGL2 :: [(ManPageKey, URL)]
11+
assocsGL2 :: [(ManPageKey, [URL])]
1212
assocsGL2 =
13-
entriesFor "gl" 2 "https://www.opengl.org/sdk/docs/man2/xhtml/" ".xml" [
13+
entriesFor "gl" "https://www.opengl.org/sdk/docs/man2/xhtml/" ".xml" [
1414
("glAccum", "glAccum"),
1515
("glActiveTexture", "glActiveTexture"),
1616
("glAlphaFunc", "glAlphaFunc"),
@@ -655,9 +655,9 @@ assocsGL2 =
655655
("glWindowPos3dv", "glWindowPos")
656656
]
657657

658-
assocsGLX1 :: [(ManPageKey, URL)]
658+
assocsGLX1 :: [(ManPageKey, [URL])]
659659
assocsGLX1 =
660-
entriesFor "glx" 1 "https://www.opengl.org/sdk/docs/man2/xhtml/" ".xml" [
660+
entriesFor "glx" "https://www.opengl.org/sdk/docs/man2/xhtml/" ".xml" [
661661
("glXChooseFBConfig", "glXChooseFBConfig"),
662662
("glXChooseVisual", "glXChooseVisual"),
663663
("glXCopyContext", "glXCopyContext"),
@@ -703,9 +703,9 @@ assocsGLX1 =
703703
("glXWaitX", "glXWaitX")
704704
]
705705

706-
assocsGL3 :: [(ManPageKey, URL)]
706+
assocsGL3 :: [(ManPageKey, [URL])]
707707
assocsGL3 =
708-
entriesFor "gl" 3 "https://www.opengl.org/sdk/docs/man3/xhtml/" ".xml" [
708+
entriesFor "gl" "https://www.opengl.org/sdk/docs/man3/xhtml/" ".xml" [
709709
("glActiveTexture", "glActiveTexture"),
710710
("glAttachShader", "glAttachShader"),
711711
("glBeginConditionalRender", "glBeginConditionalRender"),
@@ -1080,9 +1080,9 @@ assocsGL3 =
10801080
("glWaitSync", "glWaitSync")
10811081
]
10821082

1083-
assocsGL4 :: [(ManPageKey, URL)]
1083+
assocsGL4 :: [(ManPageKey, [URL])]
10841084
assocsGL4 =
1085-
entriesFor "gl" 4 "https://www.opengl.org/sdk/docs/man4/html/" ".xhtml" [
1085+
entriesFor "gl" "https://www.opengl.org/sdk/docs/man4/html/" ".xhtml" [
10861086
("glActiveShaderProgram", "glActiveShaderProgram"),
10871087
("glActiveTexture", "glActiveTexture"),
10881088
("glAttachShader", "glAttachShader"),
@@ -1696,11 +1696,13 @@ assocsGL4 =
16961696
("glWaitSync", "glWaitSync")
16971697
]
16981698

1699-
entriesFor :: String -> Int -> String -> String -> [(String, String)] -> [(ManPageKey, URL)]
1700-
entriesFor api _majorVersion baseURL extension assocs =
1701-
[ ((API api, CommandName n), baseURL ++ u ++ extension)
1699+
entriesFor :: String -> String -> String -> [(String, String)] -> [(ManPageKey, [URL])]
1700+
entriesFor api baseURL extension assocs =
1701+
[ ((API api, CommandName n), [baseURL ++ u ++ extension])
17021702
| (n, u) <- assocs ]
17031703

1704-
-- More recent man pages override older ones.
1705-
manPageURLs :: M.Map ManPageKey URL
1706-
manPageURLs = M.fromList $ concat [ assocsGL2, assocsGL3, assocsGL4, assocsGLX1 ]
1704+
manPageURLs :: M.Map ManPageKey [URL]
1705+
manPageURLs =
1706+
M.fromListWith (++) .
1707+
concat $
1708+
reverse [ assocsGL2, assocsGL3, assocsGL4, assocsGLX1 ]

src/Graphics/Rendering/OpenGL/Raw/Compatibility45.hs

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1494,7 +1494,6 @@ module Graphics.Rendering.OpenGL.Raw.Compatibility45 (
14941494
gl_TEXTURE_ALPHA_SIZE,
14951495
gl_TEXTURE_ALPHA_TYPE,
14961496
gl_TEXTURE_BASE_LEVEL,
1497-
gl_TEXTURE_BINDING,
14981497
gl_TEXTURE_BINDING_1D,
14991498
gl_TEXTURE_BINDING_1D_ARRAY,
15001499
gl_TEXTURE_BINDING_2D,

src/Graphics/Rendering/OpenGL/Raw/Core45.hs

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1108,7 +1108,6 @@ module Graphics.Rendering.OpenGL.Raw.Core45 (
11081108
gl_TEXTURE_ALPHA_SIZE,
11091109
gl_TEXTURE_ALPHA_TYPE,
11101110
gl_TEXTURE_BASE_LEVEL,
1111-
gl_TEXTURE_BINDING,
11121111
gl_TEXTURE_BINDING_1D,
11131112
gl_TEXTURE_BINDING_1D_ARRAY,
11141113
gl_TEXTURE_BINDING_2D,

0 commit comments

Comments
 (0)