Lua-cURLv3/doc/lcurl.ldoc
2014-08-27 12:05:44 +05:00

289 lines
6.9 KiB
Plaintext

---
-- @module lcurl
do
--- Create HTTP multipart/formdata object.
--
-- @treturn[1] httpform new curl HTTP Post object context
function form() end
--- Create Easy object
--
-- @treturn[1] easy new curl easy object
function easy() end
--- Create Multi object
--
-- @treturn[1] multi new curl multi object
function multi() end
--- Returns libcurl version as human readable string
--
function version() end
--- Returns libcurl version as table
--
-- @tparam[opt] string param specific version info
-- @treturn[1] table full version into if `param` was not specify
-- @return[2] specific info parameter
--
-- @usage
-- proto = curl.version_info('protocols')
-- if proto.HTTP then ... -- libcurl support http protocol
function version_info() end
end
--- HTTP multipart/formdata object
-- @type httpform
--
do
--- Add new part to form.
--
-- @tparam string name provide the name of this part
-- @tparam string content actual data to send
-- @tparam[opt] string type provides the content-type for this part
-- @tparam[opt] table headers specifies extra headers for the form POST section
-- @return[1] self
function add_content() end
--- Add new part to form.
--
-- @tparam string name provide the name of this part
-- @tparam string filename provides the filename field in the content header
-- @tparam string content actual data to send
-- @tparam[opt] string type provides the content-type for this part
-- @tparam[opt] table headers specifies extra headers for the form POST section
-- @return[1] self
function add_buffer() end
--- Add new part to form.
--
-- @tparam string name provide the name of this part
-- @tparam string path path to file that contain actual data to send
-- @tparam[opt] string type provides the content-type for this part
-- @tparam[opt] string filename provides the filename field in the content header.
-- By default it is basename of path.
-- @tparam[opt] table headers specifies extra headers for the form POST section
-- @return[1] self
function add_file() end
--- Serialize multipart/formdata HTTP POST chain.
--
-- @return[1] string serialized data
--
-- @usage print(post:get())
--
function get() end
--- Serialize multipart/formdata HTTP POST chain.
--
-- Writer function can return true or number of written bytes.
-- Also if function does not return anything is considered as success.
--
-- @tparam function writer
-- @param[opt] context writer context
-- @return[1] self
--
-- @usage
-- t = {}
-- post:get(table.insert, t)
-- print(table.concat(t))
--
function get() end
--- Serialize multipart/formdata HTTP POST chain.
--
-- This call same as httpform:get(writer.write, writer)
--
-- @tparam object writer
-- @return[1] self
--
-- @usage
-- f = io.open(...)
-- post:get(f)
--
function get() end
--- Free multipart/formdata.
--
function free() end
end
--- Easy curl object
-- @type easy
--
do
--- Perform a file transfer
--
-- @return[1] self
function perfom() end
--- URL encodes the given string
--
-- @tparam string url
-- @return[1] encoded url
function escape() end
--- URL decodes the given string
--
-- @tparam string url
-- @return[1] decoded url
function unescape() end
--- Re-initializes all options previously set.
--
-- @treturn easy self
function reset() end
--- End easy session
--
function close() end
--- Set options.
--
-- @tparam number opt one of `curl.OPT_XXX` constant
-- @param ... value
-- @treturn easy self
--
-- @usage
-- c:setopt(curl.OPT_URL, "http://example.com")
-- c:setopt(curl.OPT_READFUNCTION,
-- function(t, n) return table.remove(t) end,
-- {"1111", "2222"}
-- )
function setopt() end
--- Get information.
--
-- @tparam number info one of `curl.INFO_XXX` constant
-- @return value
--
-- @usage
-- print(c:getinfo(curl.INFO_EFFECTIVE_URL))
-- print(c:getinfo(curl.INFO_TOTAL_TIME))
-- print(c:getinfo(curl.INFO_RESPONSE_CODE))
function getinfo() end
--- Set writer function.
--
-- A callback accepting one or two parameters.
-- The first is the writer context if any, and the second is a string with the data to be written.
-- Function must return `true` or full data length or nothing to continue operation.
-- Otherwise the transfer will be aborted with an error.
--
-- @tparam function writer
-- @param[opt] context writer context
-- @return[1] self
--
function setopt_writefunction() end
--- Set writer function.
--
-- This call same as easy:set_writefunction(writer.write, writer)
--
-- @tparam object writer
-- @return[1] self
--
function setopt_writefunction() end
--- Set header function.
--
-- A callback accepting one or two parameters.
-- The first is the writer context if any, and the second is a string with the data to be written.
-- Function must return `true` or full data length or nothing to continue operation.
-- Otherwise the transfer will be aborted with an error.
--
-- @tparam function writer
-- @param[opt] context writer context
-- @return[1] self
--
function setopt_headerfunction() end
--- Set header function.
--
-- This call same as easy:set_headerfunction(writer.header, writer)
--
-- @tparam object writer
-- @return[1] self
--
function setopt_headerfunction() end
--- Set reader function.
--
-- A callback accepting one or two parameters.
-- The first is the reader context if any, and the second is the maximum amount of data to be read.
-- You can ignore second argument and pass as mach data as you need. lcurl can split data.
-- Function must return data to continue operation. To stop operation it must return empty string on nil.
-- Otherwise the transfer will be aborted with an error.
--
-- @tparam function reader
-- @param[opt] context reader context
-- @return[1] self
--
function setopt_readfunction() end
--- Set reader function.
--
-- This call same as easy:set_readfunction(reader.read, reader)
--
-- @tparam object reader
-- @return[1] self
--
function setopt_readfunction() end
--- Set progress function.
--
-- A callback accepting four or five parameters.
-- The first is the reader context if any, the second is the total number
-- of bytes expected to be downloaded in this transfer,
-- the third is the number of bytes downloaded so far,
-- the fourth is the total number of bytes expected to be uploaded
-- in this transfer, and the fifth is the number of bytes uploaded so far.
-- Function must return `true` or or nothing to continue operation.
-- Otherwise the transfer will be aborted with an error.
--
-- @tparam function progress
-- @param[opt] context progress context
-- @return[1] self
--
function setopt_progressfunction() end
--- Set reader function.
--
-- This call same as easy:set_readfunction(reader.read, reader)
--
-- @tparam object reader
-- @return[1] self
--
function setopt_readfunction() end
--- Set HTTP multipart/formdata
--
-- @tparam httpform data
-- @return[1] self
function setopt_httpform() end
--- Set HTTP multipart/formdata
--
-- @tparam string data
-- @tparam[opt=#data] number length
-- @return[1] self
function setopt_postfields() end
end
--- Muli curl object
-- @type multi
--
do
--- End multi session
--
function close() end
end