From 27b954f95b33df0a028f5ace554a2acb3cc331f2 Mon Sep 17 00:00:00 2001
From: Doug Coleman <doug.coleman@gmail.com>
Date: Fri, 4 Mar 2016 09:14:49 -0800
Subject: [PATCH] alien.libraries: Add a way to see if a dll has a function.

---
 basis/alien/libraries/libraries.factor | 5 +++++
 1 file changed, 5 insertions(+)

diff --git a/basis/alien/libraries/libraries.factor b/basis/alien/libraries/libraries.factor
index 0232821c2b..951987405f 100755
--- a/basis/alien/libraries/libraries.factor
+++ b/basis/alien/libraries/libraries.factor
@@ -29,6 +29,11 @@ C: <library> library
 
 : lookup-library ( name -- library ) libraries get at ;
 
+ERROR: no-library-named name ;
+GENERIC: dlsym? ( name string/dll -- ? )
+M: string dlsym? dup lookup-library [ nip dll>> dlsym? ] [ no-library-named ] if* ;
+M: dll dlsym? dlsym >boolean ;
+
 : open-dll ( path -- dll dll-error/f )
     [ dlopen dup dll-valid? [ f ] [ dlerror ] if ]
     [ f f ] if* ;