Branch: Tag:

2014-09-28

2014-09-28 19:11:31 by Henrik Grubbström (Grubba) <grubba@grubba.org>

Stdio.Fd: Map _errno.

Make it possible to set the errno for a Stdio.File from Pike code.

Also added some minimal documentation for the other mapped fields
in Stdio.Fd, as well as moving the documentation for the low-level
functions from Stdio.File to Stdio.Fd.

71:    "Events.thursday": "predef::Calendar.Event.Weekday":1,    "Events.tuesday": "predef::Calendar.Event.Weekday":1,    "Events.wednesday": "predef::Calendar.Event.Weekday":1, -  "FILE_APPEND": "predef::Stdio.File.mode":1, -  "FILE_CREATE": "predef::Stdio.File.mode":1, -  "FILE_EXCLUSIVE": "predef::Stdio.File.mode":1, -  "FILE_NONBLOCKING": "predef::Stdio.File.mode":1, -  "FILE_READ": "predef::Stdio.File.mode":1, -  "FILE_TRUNC": "predef::Stdio.File.mode":1, -  "FILE_WRITE": "predef::Stdio.File.mode":1, +  "FILE_APPEND": "predef::Stdio.Fd.mode":1, +  "FILE_CREATE": "predef::Stdio.Fd.mode":1, +  "FILE_EXCLUSIVE": "predef::Stdio.Fd.mode":1, +  "FILE_NONBLOCKING": "predef::Stdio.Fd.mode":1, +  "FILE_READ": "predef::Stdio.Fd.mode":1, +  "FILE_TRUNC": "predef::Stdio.Fd.mode":1, +  "FILE_WRITE": "predef::Stdio.Fd.mode":1,    "File.statat()": "7.8::Stdio.File.openat":1,    "File.unlinkat()": "7.8::Stdio.File.openat":1,    "ForkFd": "predef::Tools.Standalone.forkd.FdStream":1,
255:    "Stdio.File.query_address": "7.8::SSL.sslfile.query_address":2,    "Stdio.File.read": "7.8::SSL.sslfile.read":1,    "Stdio.File.write": "7.8::SSL.sslfile.write":1, -  "Stdio.FileLockKey": "predef::Stdio.File.lock":2, "predef::Stdio.File.trylock":2, +  "Stdio.FileLockKey": "predef::Stdio.Fd.lock":2, "predef::Stdio.Fd.trylock":2,    "Stdio.LineIterator": "predef::Bz2.File.line_iterator":1,    "Stdio.Port()->bind()": "7.8::SSL.sslport.bind":1,    "Stdio.Port()->listen_fd()": "7.8::SSL.sslport.listen_fd":1,
306:    "_verify_internals()": "predef::Debug.memory_usage":1,    "`certificates": "predef::SSL.Context":4,    "`rsa": "predef::SSL.Context":4, -  "accept()": "predef::Stdio.File.set_buffer":1, "predef::Stdio.UDP.set_buffer":1, +  "accept()": "predef::Stdio.Fd.set_buffer":1, "predef::Stdio.UDP.set_buffer":1,    "accept_queue": "7.8::SSL.sslport.accept":1, "7.8::SSL.sslport.finished_callback":2, "predef::SSL.Port.accept":1,    "add_cert": "predef::Protocols.HTTP.Server.SSLPort.MySSLPort.set_certificate":1, "predef::Protocols.HTTP.Server.SSLPort.MySSLPort.set_key":1,    "addat()": "predef::String.Buffer.add":1,    "an": "predef::Protocols.DNS.server_base.reply_query":3,    "args": "predef::Stdio.sendfile":1,    "array ": "predef::Image.GIF.__decode":1, "predef::Image.GIF._decode":2, "predef::Image.ILBM.__decode":1, "predef::Image.ILBM._decode":1, "predef::Image.Image.cast":1, -  +  "assign()": "predef::Stdio.Fd.dup2":2,    "atexit": "lfun::destroy":1,    "attr": "predef::Stdio.File.tcgetattr":1,    "backtrace_frame": "predef::Error.Generic":1, "predef::Error.Generic.create":1, "predef::MasterObject.describe_backtrace":1,
345:    "dirname()": "cpp::":1,    "do_sync_method()": "predef::Protocols.HTTP.do_method":1,    "driver_names": "predef::GLUE.init":1, -  "dup()": "predef::Stdio.Fd.fd_factory":1, +     "exec": "predef::Regexp.PCRE.ERROR":1, -  "exec()": "predef::Stdio.File.set_close_on_exec":1, +  "exec()": "predef::Stdio.Fd.set_close_on_exec":1,    "extension": "predef::MIME.ext_to_media_type":1,    "false": "predef::Stdio.IOBuffer.range_error":1,    "fc": "predef::MasterObject.fc_reverse_lookup":1,
472:    "offset": "predef::Stdio.sendfile":2,    "old": "predef::Parser.XML.Tree.AbstractNode.add_child":2,    "open_socket()": "predef::Stdio.UDP.set_buffer":1, -  "openat()": "predef::Stdio.Fd.fd_factory":2, +  "path": "predef::Stdio.Fd.connect_unix":1,    "pathname": "predef::System.resolvepath":1,    "pid": "predef::Fuse.Operations.lock":1, -  "pipe()": "predef::Stdio.Fd.fd_factory":2, +     "predef::__pragma_save_parent__": "cpp::":1,    "predef::foreach()": "lfun::_get_iterator":1,    "prev": "predef::Parser.RCS.Revision":2,
500:    "set_charset": "predef::Mysql.mysql.create":3,    "set_decrypt_key()": "predef::Nettle.CHACHA.State.set_iv":1, "predef::Nettle.SALSA20.State.set_iv":1,    "set_encrypt_key()": "predef::Nettle.CHACHA.State.set_iv":1, "predef::Nettle.SALSA20.State.set_iv":1, +  "set_fs_event_callback": "predef::Stdio.Fd.set_backend":1,    "set_iv()": "predef::Nettle.BlockCipher16.EAX.State.set_decrypt_key":2, "predef::Nettle.BlockCipher16.EAX.State.set_encrypt_key":2, -  +  "set_read_callback": "predef::Stdio.Fd.set_backend":1,    "set_short_namespaces()": "predef::Parser.XML.Tree.VirtualNode.get_short_attributes":1,    "set_unicode_decode_mode": "predef::Mysql.mysql.create":1, "predef::Mysql.mysql_result.fetch_json_result":1, -  +  "set_write_callback": "predef::Stdio.Fd.set_backend":1,    "setencoded": "predef::MIME.Message.setdata":1,    "setuid": "predef::Process.create_process.create":2,    "stable_time": "predef::Filesystem.Monitor.basic.stable_data_change":1, "predef::Filesystem.Monitor.symlinks.stable_data_change":1,
1385:   "predef::Standards.XML.Wix.get_module_xml": "Directory" "WixNode"   "predef::Stdio": "Stdio.stdout.write()" "_Stdio"   "predef::Stdio.Fd": "_Stdio.Fd_ref" - "predef::Stdio.Fd.fd_factory": "dup()" "openat()" "pipe()" + "predef::Stdio.Fd.connect_unix": "path" + "predef::Stdio.Fd.dup2": "assign()" + "predef::Stdio.Fd.lock": "Stdio.FileLockKey" + "predef::Stdio.Fd.mode": "FILE_APPEND" "FILE_CREATE" "FILE_EXCLUSIVE" "FILE_NONBLOCKING" "FILE_READ" "FILE_TRUNC" "FILE_WRITE" + "predef::Stdio.Fd.set_backend": "set_fs_event_callback" "set_read_callback" "set_write_callback" + "predef::Stdio.Fd.set_buffer": "accept()" + "predef::Stdio.Fd.set_close_on_exec": "exec()" + "predef::Stdio.Fd.trylock": "Stdio.FileLockKey"   "predef::Stdio.Fd_ref": "_Stdio.Fd"   "predef::Stdio.File.create": "chmod()"   "predef::Stdio.File.line_iterator": "LineIterator" - "predef::Stdio.File.lock": "Stdio.FileLockKey" - "predef::Stdio.File.mode": "FILE_APPEND" "FILE_CREATE" "FILE_EXCLUSIVE" "FILE_NONBLOCKING" "FILE_READ" "FILE_TRUNC" "FILE_WRITE" - "predef::Stdio.File.set_buffer": "accept()" - "predef::Stdio.File.set_close_on_exec": "exec()" +    "predef::Stdio.File.set_read_callback": "System.EPIPE" "close_cb" "read_oob_cb" "write_cb" "write_oob_cb"   "predef::Stdio.File.tcgetattr": "attr" "when" - "predef::Stdio.File.trylock": "Stdio.FileLockKey" +    "predef::Stdio.IOBuffer.add": "AddArgument"   "predef::Stdio.IOBuffer.range_error": "bool" "false" "true"   "predef::Stdio.IOBuffer.read": "bytes"