Updated cURL library to use API wrapper library

Then removed useless classes such as {API_LOADER} {API_LOADER_IMP}, removed useless library references such as Vision2 and WEL

git-svn-id: https://svn.origo.ethz.ch/eiffelstudio/trunk/Src/library/cURL@78736 8089f293-4706-0410-a29e-feb5c42a2edf
This commit is contained in:
larryl
2009-05-18 04:33:10 +00:00
parent 03851ac02e
commit 5d63551002
7 changed files with 41 additions and 342 deletions

View File

@@ -1,79 +0,0 @@
note
description: "[
Interactive with native system APIs for dynamic loading.
GTK verson.
]"
status: "See notice at end of class."
legal: "See notice at end of class."
date: "$Date$"
revision: "$Revision$"
class
API_LOADER_IMP
feature -- Command
load_module (a_name: STRING): POINTER
-- Load module with `a_name'.
-- `a_name' is LPCTSTR, we should use WEL_STRING here.
require
exists: a_name /= Void
local
l_c_string: EV_GTK_C_STRING
do
l_c_string := a_name
Result := {EV_GTK_EXTERNALS}.g_module_open (l_c_string.item, 0)
end
loal_api (a_module: POINTER; a_name: STRING): POINTER
-- Load api which name is `a_name' in `a_module'
require
exists: a_module /= default_pointer
exists: a_name /= Void
local
l_c_string: EV_GTK_C_STRING
l_success: BOOLEAN
l_result: POINTER
do
if a_module /= default_pointer then
l_c_string := a_name
l_success := {EV_GTK_EXTERNALS}.g_module_symbol (a_module, l_c_string.item, $l_result)
if l_success then
Result := l_result
end
end
end
note
copyright: "Copyright (c) 1984-2007, Eiffel Software"
license: "GPL version 2 (see http://www.eiffel.com/licensing/gpl.txt)"
licensing_options: "http://www.eiffel.com/licensing"
copying: "[
This file is part of Eiffel Software's Eiffel Development Environment.
Eiffel Software's Eiffel Development Environment is free
software; you can redistribute it and/or modify it under
the terms of the GNU General Public License as published
by the Free Software Foundation, version 2 of the License
(available at the URL listed under "license" above).
Eiffel Software's Eiffel Development Environment is
distributed in the hope that it will be useful, but
WITHOUT ANY WARRANTY; without even the implied warranty
of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
See the GNU General Public License for more details.
You should have received a copy of the GNU General Public
License along with Eiffel Software's Eiffel Development
Environment; if not, write to the Free Software Foundation,
Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
]"
source: "[
Eiffel Software
356 Storke Road, Goleta, CA 93117 USA
Telephone 805-685-1006, Fax 805-685-6869
Website http://www.eiffel.com
Customer support http://support.eiffel.com
]"
end

View File

@@ -1,96 +0,0 @@
note
description: "[
Interactive with native system APIs for dynamic loading.
Windows verson.
]"
status: "See notice at end of class."
legal: "See notice at end of class."
date: "$Date$"
revision: "$Revision$"
class
API_LOADER_IMP
feature -- Command
load_module (a_name: STRING): POINTER
-- Load module with `a_name'.
-- `a_name' is LPCTSTR, we should use WEL_STRING here.
require
exists: a_name /= Void
local
l_wel_string: WEL_STRING
do
create l_wel_string.make (a_name)
Result := c_load_module (l_wel_string.item)
end
loal_api (a_module: POINTER; a_name: STRING): POINTER
-- Load api which name is `a_name' in `a_module'
require
exists: a_module /= default_pointer
exists: a_name /= Void
local
l_c_string: C_STRING
do
create l_c_string.make (a_name)
Result := c_loal_api (a_module, l_c_string.item)
end
feature {NONE} -- Implementation
c_load_module (a_name: POINTER): POINTER
-- Load module with `a_name'.
-- `a_name' is LPCTSTR, we should use WEL_STRING here.
require
exists: a_name /= default_pointer
external
"C inline use <windows.h>"
alias
"return (EIF_POINTER) LoadLibrary ($a_name);"
end
c_loal_api (a_module: POINTER; a_name: POINTER): POINTER
-- Load api which name is `a_name' in `a_module'
require
exists: a_module /= default_pointer
exists: a_name /= default_pointer
external
"C inline use <windows.h>"
alias
"return GetProcAddress ((HMODULE) $a_module, $a_name);"
end
note
copyright: "Copyright (c) 1984-2007, Eiffel Software"
license: "GPL version 2 (see http://www.eiffel.com/licensing/gpl.txt)"
licensing_options: "http://www.eiffel.com/licensing"
copying: "[
This file is part of Eiffel Software's Eiffel Development Environment.
Eiffel Software's Eiffel Development Environment is free
software; you can redistribute it and/or modify it under
the terms of the GNU General Public License as published
by the Free Software Foundation, version 2 of the License
(available at the URL listed under "license" above).
Eiffel Software's Eiffel Development Environment is
distributed in the hope that it will be useful, but
WITHOUT ANY WARRANTY; without even the implied warranty
of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
See the GNU General Public License for more details.
You should have received a copy of the GNU General Public
License along with Eiffel Software's Eiffel Development
Environment; if not, write to the Free Software Foundation,
Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
]"
source: "[
Eiffel Software
356 Storke Road, Goleta, CA 93117 USA
Telephone 805-685-1006, Fax 805-685-6869
Website http://www.eiffel.com
Customer support http://support.eiffel.com
]"
end