├── Artistic.README
├── Copyright
├── Credits.LPmud
├── Credits.MudOS
├── Performance
├── README
├── Version
├── bin
└── .gitignore
├── doc
├── html
│ ├── applies
│ │ ├── __INIT
│ │ ├── __INIT.html
│ │ ├── clean_up
│ │ ├── clean_up.html
│ │ ├── create
│ │ ├── create.html
│ │ ├── heart_beat
│ │ ├── heart_beat.html
│ │ ├── id
│ │ ├── id.html
│ │ ├── index
│ │ ├── index.html
│ │ ├── init
│ │ ├── init.html
│ │ ├── interactive
│ │ │ ├── catch_tell
│ │ │ ├── catch_tell.html
│ │ │ ├── index
│ │ │ ├── index.c.html
│ │ │ ├── index.html
│ │ │ ├── logon
│ │ │ ├── logon.html
│ │ │ ├── net_dead
│ │ │ ├── net_dead.html
│ │ │ ├── process_input
│ │ │ ├── process_input.html
│ │ │ ├── receive_message
│ │ │ ├── receive_message.c.html
│ │ │ ├── receive_message.html
│ │ │ ├── receive_snoop
│ │ │ ├── receive_snoop.c.html
│ │ │ ├── receive_snoop.html
│ │ │ ├── telnet_suboption
│ │ │ ├── telnet_suboption.c.html
│ │ │ ├── telnet_suboption.html
│ │ │ ├── terminal_type
│ │ │ ├── terminal_type.html
│ │ │ ├── window_size
│ │ │ ├── window_size.html
│ │ │ ├── write_prompt
│ │ │ └── write_prompt.html
│ │ ├── master
│ │ │ ├── author_file
│ │ │ ├── author_file.html
│ │ │ ├── compile_object
│ │ │ ├── compile_object.html
│ │ │ ├── connect
│ │ │ ├── connect.html
│ │ │ ├── crash
│ │ │ ├── crash.html
│ │ │ ├── creator_file
│ │ │ ├── creator_file.html
│ │ │ ├── domain_file
│ │ │ ├── domain_file.html
│ │ │ ├── epilog
│ │ │ ├── epilog.html
│ │ │ ├── error_handler
│ │ │ ├── error_handler.html
│ │ │ ├── flag
│ │ │ ├── flag.html
│ │ │ ├── get_bb_uid
│ │ │ ├── get_bb_uid.html
│ │ │ ├── get_root_uid
│ │ │ ├── get_root_uid.html
│ │ │ ├── get_save_file_name
│ │ │ ├── get_save_file_name.html
│ │ │ ├── index
│ │ │ ├── index.html
│ │ │ ├── log_error
│ │ │ ├── log_error.html
│ │ │ ├── make_path_absolute
│ │ │ ├── make_path_absolute.html
│ │ │ ├── object_name
│ │ │ ├── object_name.html
│ │ │ ├── parse_command_all_word
│ │ │ ├── parse_command_all_word.html
│ │ │ ├── parse_command_prepos_list
│ │ │ ├── parse_command_prepos_list.html
│ │ │ ├── preload
│ │ │ ├── preload.html
│ │ │ ├── privs_file
│ │ │ ├── privs_file.html
│ │ │ ├── retrieve_ed_setup
│ │ │ ├── retrieve_ed_setup.html
│ │ │ ├── save_ed_setup
│ │ │ ├── save_ed_setup.html
│ │ │ ├── slow_shutdown
│ │ │ ├── slow_shutdown.html
│ │ │ ├── valid_bind
│ │ │ ├── valid_bind.html
│ │ │ ├── valid_compile_to_c
│ │ │ ├── valid_compile_to_c.html
│ │ │ ├── valid_hide
│ │ │ ├── valid_hide.html
│ │ │ ├── valid_link
│ │ │ ├── valid_link.html
│ │ │ ├── valid_object
│ │ │ ├── valid_object.html
│ │ │ ├── valid_override
│ │ │ ├── valid_override.html
│ │ │ ├── valid_read
│ │ │ ├── valid_read.html
│ │ │ ├── valid_save_binary
│ │ │ ├── valid_save_binary.html
│ │ │ ├── valid_seteuid
│ │ │ ├── valid_seteuid.html
│ │ │ ├── valid_shadow
│ │ │ ├── valid_shadow.html
│ │ │ ├── valid_socket
│ │ │ ├── valid_socket.html
│ │ │ ├── valid_write
│ │ │ └── valid_write.html
│ │ ├── move_or_destruct
│ │ ├── move_or_destruct.html
│ │ ├── parsing
│ │ │ ├── index
│ │ │ ├── index.c.html
│ │ │ ├── index.html
│ │ │ ├── parse_command_adjectiv_id_list
│ │ │ ├── parse_command_adjectiv_id_list.c.html
│ │ │ ├── parse_command_adjectiv_id_list.html
│ │ │ ├── parse_command_id_list
│ │ │ ├── parse_command_id_list.c.html
│ │ │ ├── parse_command_id_list.html
│ │ │ ├── parse_command_plural_id_list
│ │ │ ├── parse_command_plural_id_list.c.html
│ │ │ └── parse_command_plural_id_list.html
│ │ ├── reset
│ │ └── reset.html
│ ├── concepts
│ │ ├── MudOSdriver
│ │ ├── MudOSdriver.html
│ │ ├── defines
│ │ ├── defines.html
│ │ ├── index
│ │ ├── index.html
│ │ ├── lpc
│ │ ├── lpc.html
│ │ ├── message_doc
│ │ ├── message_doc.html
│ │ ├── objects
│ │ ├── objects.html
│ │ ├── oop
│ │ ├── oop.html
│ │ ├── preprocessor
│ │ ├── preprocessor.html
│ │ ├── simul_efun
│ │ ├── simul_efun.html
│ │ ├── socket_efuns
│ │ └── socket_efuns.html
│ ├── driver
│ │ ├── adding_efuns
│ │ ├── adding_efuns.html
│ │ ├── done-lars
│ │ ├── done-lars.html
│ │ ├── done-mudos
│ │ ├── done-mudos.html
│ │ ├── index
│ │ ├── index.html
│ │ ├── malloc
│ │ ├── malloc.html
│ │ ├── stackmachine
│ │ └── stackmachine.html
│ ├── efuns
│ │ ├── TODO
│ │ ├── arrays
│ │ │ ├── allocate
│ │ │ ├── allocate.html
│ │ │ ├── filter_array
│ │ │ ├── filter_array.html
│ │ │ ├── index
│ │ │ ├── index.html
│ │ │ ├── map_array
│ │ │ ├── map_array.html
│ │ │ ├── member_array
│ │ │ ├── member_array.html
│ │ │ ├── sort_array
│ │ │ ├── sort_array.html
│ │ │ ├── unique_array
│ │ │ └── unique_array.html
│ │ ├── buffers
│ │ │ ├── allocate_buffer
│ │ │ ├── allocate_buffer.html
│ │ │ ├── crc32
│ │ │ ├── crc32.html
│ │ │ ├── index
│ │ │ ├── index.html
│ │ │ ├── read_buffer
│ │ │ ├── read_buffer.html
│ │ │ ├── write_buffer
│ │ │ └── write_buffer.html
│ │ ├── calls
│ │ │ ├── call_other
│ │ │ ├── call_other.html
│ │ │ ├── call_out
│ │ │ ├── call_out.html
│ │ │ ├── call_stack
│ │ │ ├── call_stack.html
│ │ │ ├── catch
│ │ │ ├── catch.html
│ │ │ ├── index
│ │ │ ├── index.html
│ │ │ ├── origin
│ │ │ ├── origin.html
│ │ │ ├── previous_object
│ │ │ ├── previous_object.html
│ │ │ ├── query_shadowing
│ │ │ ├── query_shadowing.html
│ │ │ ├── remove_call_out
│ │ │ ├── remove_call_out.html
│ │ │ ├── remove_shadow
│ │ │ ├── remove_shadow.html
│ │ │ ├── shadow
│ │ │ ├── shadow.html
│ │ │ ├── this_object
│ │ │ ├── this_object.html
│ │ │ ├── throw
│ │ │ └── throw.html
│ │ ├── compile
│ │ │ ├── generate_source
│ │ │ ├── generate_source.html
│ │ │ ├── index
│ │ │ └── index.html
│ │ ├── filesystem
│ │ │ ├── cp
│ │ │ ├── cp.html
│ │ │ ├── file_length
│ │ │ ├── file_length.html
│ │ │ ├── file_size
│ │ │ ├── file_size.html
│ │ │ ├── get_dir
│ │ │ ├── get_dir.html
│ │ │ ├── index
│ │ │ ├── index.html
│ │ │ ├── link
│ │ │ ├── link.html
│ │ │ ├── mkdir
│ │ │ ├── mkdir.html
│ │ │ ├── read_bytes
│ │ │ ├── read_bytes.html
│ │ │ ├── read_file
│ │ │ ├── read_file.html
│ │ │ ├── rename
│ │ │ ├── rename.html
│ │ │ ├── rm
│ │ │ ├── rm.html
│ │ │ ├── rmdir
│ │ │ ├── rmdir.html
│ │ │ ├── stat
│ │ │ ├── stat.html
│ │ │ ├── write_bytes
│ │ │ ├── write_bytes.html
│ │ │ ├── write_file
│ │ │ └── write_file.html
│ │ ├── floats
│ │ │ ├── acos
│ │ │ ├── acos.html
│ │ │ ├── asin
│ │ │ ├── asin.html
│ │ │ ├── atan
│ │ │ ├── atan.html
│ │ │ ├── ceil
│ │ │ ├── ceil.html
│ │ │ ├── cos
│ │ │ ├── cos.html
│ │ │ ├── exp
│ │ │ ├── exp.html
│ │ │ ├── floor
│ │ │ ├── floor.html
│ │ │ ├── index
│ │ │ ├── index.html
│ │ │ ├── log
│ │ │ ├── log.html
│ │ │ ├── pow
│ │ │ ├── pow.html
│ │ │ ├── sin
│ │ │ ├── sin.html
│ │ │ ├── sqrt
│ │ │ ├── sqrt.html
│ │ │ ├── tan
│ │ │ ├── tan.html
│ │ │ ├── to_int
│ │ │ └── to_int.html
│ │ ├── functions
│ │ │ ├── bind
│ │ │ ├── bind.html
│ │ │ ├── evaluate
│ │ │ ├── evaluate.html
│ │ │ ├── function_owner
│ │ │ ├── function_owner.html
│ │ │ ├── index
│ │ │ └── index.html
│ │ ├── general
│ │ │ ├── copy
│ │ │ ├── copy.html
│ │ │ ├── fetch_variable
│ │ │ ├── fetch_variable.html
│ │ │ ├── filter
│ │ │ ├── filter.html
│ │ │ ├── index
│ │ │ ├── index.html
│ │ │ ├── map
│ │ │ ├── map.html
│ │ │ ├── restore_variable
│ │ │ ├── restore_variable.html
│ │ │ ├── save_variable
│ │ │ ├── save_variable.html
│ │ │ ├── sizeof
│ │ │ ├── sizeof.html
│ │ │ ├── store_variable
│ │ │ ├── store_variable.html
│ │ │ ├── typeof
│ │ │ └── typeof.html
│ │ ├── index
│ │ ├── index.html
│ │ ├── interactive
│ │ │ ├── add_action
│ │ │ ├── add_action.html
│ │ │ ├── command
│ │ │ ├── command.html
│ │ │ ├── commands
│ │ │ ├── commands.c.html
│ │ │ ├── commands.html
│ │ │ ├── disable_commands
│ │ │ ├── disable_commands.html
│ │ │ ├── disable_wizard
│ │ │ ├── disable_wizard.html
│ │ │ ├── ed
│ │ │ ├── ed.html
│ │ │ ├── ed_cmd
│ │ │ ├── ed_cmd.html
│ │ │ ├── ed_start
│ │ │ ├── ed_start.html
│ │ │ ├── enable_commands
│ │ │ ├── enable_commands.html
│ │ │ ├── enable_wizard
│ │ │ ├── enable_wizard.html
│ │ │ ├── exec
│ │ │ ├── exec.html
│ │ │ ├── find_player
│ │ │ ├── find_player.html
│ │ │ ├── get_char
│ │ │ ├── get_char.html
│ │ │ ├── in_edit
│ │ │ ├── in_edit.html
│ │ │ ├── in_input
│ │ │ ├── in_input.html
│ │ │ ├── index
│ │ │ ├── index.html
│ │ │ ├── input_to
│ │ │ ├── input_to.html
│ │ │ ├── interactive
│ │ │ ├── interactive.html
│ │ │ ├── message
│ │ │ ├── message.html
│ │ │ ├── notify_fail
│ │ │ ├── notify_fail.html
│ │ │ ├── printf
│ │ │ ├── printf.html
│ │ │ ├── query_ed_mode
│ │ │ ├── query_ed_mode.html
│ │ │ ├── query_host_name
│ │ │ ├── query_host_name.html
│ │ │ ├── query_idle
│ │ │ ├── query_idle.html
│ │ │ ├── query_ip_name
│ │ │ ├── query_ip_name.html
│ │ │ ├── query_ip_number
│ │ │ ├── query_ip_number.html
│ │ │ ├── query_ip_port
│ │ │ ├── query_ip_port.html
│ │ │ ├── query_notify_fail
│ │ │ ├── query_notify_fail.html
│ │ │ ├── query_snoop
│ │ │ ├── query_snoop.html
│ │ │ ├── query_snooping
│ │ │ ├── query_snooping.html
│ │ │ ├── receive
│ │ │ ├── receive.html
│ │ │ ├── remove_action
│ │ │ ├── remove_action.html
│ │ │ ├── remove_interactive
│ │ │ ├── remove_interactive.html
│ │ │ ├── resolve
│ │ │ ├── resolve.html
│ │ │ ├── say
│ │ │ ├── say.html
│ │ │ ├── set_this_player
│ │ │ ├── set_this_player.html
│ │ │ ├── shout
│ │ │ ├── shout.html
│ │ │ ├── snoop
│ │ │ ├── snoop.html
│ │ │ ├── this_interactive
│ │ │ ├── this_interactive.html
│ │ │ ├── this_player
│ │ │ ├── this_player.html
│ │ │ ├── this_user
│ │ │ ├── this_user.html
│ │ │ ├── userp
│ │ │ ├── userp.html
│ │ │ ├── users
│ │ │ ├── users.html
│ │ │ ├── wizardp
│ │ │ ├── wizardp.html
│ │ │ ├── write
│ │ │ └── write.html
│ │ ├── internals
│ │ │ ├── cache_stats
│ │ │ ├── cache_stats.html
│ │ │ ├── debug_info
│ │ │ ├── debug_info.html
│ │ │ ├── debugmalloc
│ │ │ ├── debugmalloc.html
│ │ │ ├── dump_file_descriptors
│ │ │ ├── dump_file_descriptors.html
│ │ │ ├── dump_prog
│ │ │ ├── dump_prog.html
│ │ │ ├── dump_socket_status
│ │ │ ├── dump_socket_status.html
│ │ │ ├── dumpallobj
│ │ │ ├── dumpallobj.html
│ │ │ ├── get_config
│ │ │ ├── get_config.html
│ │ │ ├── index
│ │ │ ├── index.html
│ │ │ ├── malloc_status
│ │ │ ├── malloc_status.html
│ │ │ ├── memory_info
│ │ │ ├── memory_info.html
│ │ │ ├── mud_status
│ │ │ ├── mud_status.html
│ │ │ ├── opcprof
│ │ │ ├── opcprof.html
│ │ │ ├── query_load_average
│ │ │ ├── query_load_average.html
│ │ │ ├── refs
│ │ │ ├── refs.html
│ │ │ ├── rusage
│ │ │ ├── rusage.html
│ │ │ ├── set_debug_level
│ │ │ ├── set_debug_level.html
│ │ │ ├── set_malloc_mask
│ │ │ ├── set_malloc_mask.html
│ │ │ ├── swap
│ │ │ ├── swap.html
│ │ │ ├── time_expression
│ │ │ ├── time_expression.html
│ │ │ ├── trace
│ │ │ ├── trace.html
│ │ │ ├── traceprefix
│ │ │ └── traceprefix.html
│ │ ├── mappings
│ │ │ ├── allocate_mapping
│ │ │ ├── allocate_mapping.html
│ │ │ ├── filter_mapping
│ │ │ ├── filter_mapping.html
│ │ │ ├── index
│ │ │ ├── index.html
│ │ │ ├── keys
│ │ │ ├── keys.html
│ │ │ ├── m_delete
│ │ │ ├── m_delete.html
│ │ │ ├── m_indices
│ │ │ ├── m_indices.html
│ │ │ ├── m_values
│ │ │ ├── m_values.html
│ │ │ ├── map_delete
│ │ │ ├── map_delete.html
│ │ │ ├── map_mapping
│ │ │ ├── map_mapping.html
│ │ │ ├── match_path
│ │ │ ├── match_path.html
│ │ │ ├── unique_mapping
│ │ │ ├── unique_mapping.html
│ │ │ ├── values
│ │ │ └── values.html
│ │ ├── mixed
│ │ │ ├── arrayp
│ │ │ ├── arrayp.html
│ │ │ ├── bufferp
│ │ │ ├── bufferp.html
│ │ │ ├── classp
│ │ │ ├── classp.html
│ │ │ ├── floatp
│ │ │ ├── floatp.html
│ │ │ ├── functionp
│ │ │ ├── functionp.html
│ │ │ ├── intp
│ │ │ ├── intp.html
│ │ │ ├── mapp
│ │ │ ├── mapp.html
│ │ │ ├── objectp
│ │ │ ├── objectp.html
│ │ │ ├── pointerp
│ │ │ ├── pointerp.html
│ │ │ ├── stringp
│ │ │ ├── stringp.html
│ │ │ ├── undefinedp
│ │ │ └── undefinedp.html
│ │ ├── mudlib
│ │ │ ├── author_stats
│ │ │ ├── author_stats.html
│ │ │ ├── domain_stats
│ │ │ ├── domain_stats.html
│ │ │ ├── export_uid
│ │ │ ├── export_uid.html
│ │ │ ├── find_living
│ │ │ ├── find_living.html
│ │ │ ├── geteuid
│ │ │ ├── geteuid.html
│ │ │ ├── getuid
│ │ │ ├── getuid.html
│ │ │ ├── index
│ │ │ ├── index.html
│ │ │ ├── living
│ │ │ ├── living.html
│ │ │ ├── livings
│ │ │ ├── livings.html
│ │ │ ├── query_privs
│ │ │ ├── query_privs.html
│ │ │ ├── set_author
│ │ │ ├── set_author.html
│ │ │ ├── set_light
│ │ │ ├── set_light.html
│ │ │ ├── set_living_name
│ │ │ ├── set_living_name.html
│ │ │ ├── set_privs
│ │ │ ├── set_privs.html
│ │ │ ├── seteuid
│ │ │ └── seteuid.html
│ │ ├── numbers
│ │ │ ├── index
│ │ │ ├── index.html
│ │ │ ├── random
│ │ │ ├── random.html
│ │ │ ├── to_float
│ │ │ └── to_float.html
│ │ ├── objects
│ │ │ ├── all_inventory
│ │ │ ├── all_inventory.html
│ │ │ ├── children
│ │ │ ├── children.html
│ │ │ ├── clone_object
│ │ │ ├── clone_object.html
│ │ │ ├── clonep
│ │ │ ├── clonep.html
│ │ │ ├── deep_inventory
│ │ │ ├── deep_inventory.html
│ │ │ ├── destruct
│ │ │ ├── destruct.html
│ │ │ ├── environment
│ │ │ ├── environment.html
│ │ │ ├── file_name
│ │ │ ├── file_name.html
│ │ │ ├── find_object
│ │ │ ├── find_object.html
│ │ │ ├── first_inventory
│ │ │ ├── first_inventory.html
│ │ │ ├── heart_beat_info
│ │ │ ├── heart_beat_info.html
│ │ │ ├── heart_beats
│ │ │ ├── heart_beats.html
│ │ │ ├── index
│ │ │ ├── index.html
│ │ │ ├── load_object
│ │ │ ├── load_object.html
│ │ │ ├── master
│ │ │ ├── master.html
│ │ │ ├── move_object
│ │ │ ├── move_object.html
│ │ │ ├── new
│ │ │ ├── new.html
│ │ │ ├── next_inventory
│ │ │ ├── next_inventory.html
│ │ │ ├── objects
│ │ │ ├── objects.html
│ │ │ ├── present
│ │ │ ├── present.html
│ │ │ ├── query_heart_beat
│ │ │ ├── query_heart_beat.html
│ │ │ ├── reload_object
│ │ │ ├── reload_object.html
│ │ │ ├── restore_object
│ │ │ ├── restore_object.html
│ │ │ ├── save_object
│ │ │ ├── save_object.html
│ │ │ ├── set_heart_beat
│ │ │ ├── set_heart_beat.html
│ │ │ ├── set_hide
│ │ │ ├── set_hide.html
│ │ │ ├── tell_object
│ │ │ ├── tell_object.html
│ │ │ ├── tell_room
│ │ │ ├── tell_room.html
│ │ │ ├── virtualp
│ │ │ └── virtualp.html
│ │ ├── parsing
│ │ │ ├── TODO
│ │ │ ├── index
│ │ │ ├── index.html
│ │ │ ├── query_verb
│ │ │ └── query_verb.html
│ │ ├── sockets
│ │ │ ├── index
│ │ │ ├── index.html
│ │ │ ├── socket_accept
│ │ │ ├── socket_accept.html
│ │ │ ├── socket_acquire
│ │ │ ├── socket_acquire.html
│ │ │ ├── socket_address
│ │ │ ├── socket_address.html
│ │ │ ├── socket_bind
│ │ │ ├── socket_bind.html
│ │ │ ├── socket_close
│ │ │ ├── socket_close.html
│ │ │ ├── socket_connect
│ │ │ ├── socket_connect.html
│ │ │ ├── socket_create
│ │ │ ├── socket_create.html
│ │ │ ├── socket_error
│ │ │ ├── socket_error.html
│ │ │ ├── socket_listen
│ │ │ ├── socket_listen.html
│ │ │ ├── socket_release
│ │ │ ├── socket_release.html
│ │ │ ├── socket_write
│ │ │ └── socket_write.html
│ │ ├── strings
│ │ │ ├── capitalize
│ │ │ ├── capitalize.html
│ │ │ ├── clear_bit
│ │ │ ├── clear_bit.html
│ │ │ ├── crypt
│ │ │ ├── crypt.html
│ │ │ ├── explode
│ │ │ ├── explode.html
│ │ │ ├── implode
│ │ │ ├── implode.html
│ │ │ ├── index
│ │ │ ├── index.html
│ │ │ ├── lower_case
│ │ │ ├── lower_case.html
│ │ │ ├── pluralize
│ │ │ ├── pluralize.html
│ │ │ ├── reg_assoc
│ │ │ ├── reg_assoc.html
│ │ │ ├── regexp
│ │ │ ├── regexp.html
│ │ │ ├── repeat_string
│ │ │ ├── repeat_string.html
│ │ │ ├── replace_string
│ │ │ ├── replace_string.html
│ │ │ ├── set_bit
│ │ │ ├── set_bit.html
│ │ │ ├── sprintf
│ │ │ ├── sprintf.html
│ │ │ ├── sscanf
│ │ │ ├── sscanf.html
│ │ │ ├── strcmp
│ │ │ ├── strcmp.html
│ │ │ ├── strlen
│ │ │ ├── strlen.html
│ │ │ ├── strsrch
│ │ │ ├── strsrch.html
│ │ │ ├── terminal_colour
│ │ │ ├── terminal_colour.html
│ │ │ ├── test_bit
│ │ │ ├── test_bit.html
│ │ │ ├── upper_case
│ │ │ └── upper_case.html
│ │ └── system
│ │ │ ├── all_previous_objects
│ │ │ ├── all_previous_objects.html
│ │ │ ├── call_out_info
│ │ │ ├── call_out_info.html
│ │ │ ├── check_memory
│ │ │ ├── check_memory.html
│ │ │ ├── ctime
│ │ │ ├── ctime.html
│ │ │ ├── deep_inherit_list
│ │ │ ├── deep_inherit_list.html
│ │ │ ├── error
│ │ │ ├── error.html
│ │ │ ├── eval_cost
│ │ │ ├── eval_cost.html
│ │ │ ├── external_start
│ │ │ ├── external_start.html
│ │ │ ├── find_call_out
│ │ │ ├── find_call_out.html
│ │ │ ├── flush_messages
│ │ │ ├── flush_messages.html
│ │ │ ├── function_exists
│ │ │ ├── function_exists.html
│ │ │ ├── function_profile
│ │ │ ├── function_profile.html
│ │ │ ├── functions
│ │ │ ├── functions.html
│ │ │ ├── index
│ │ │ ├── index.html
│ │ │ ├── inherit_list
│ │ │ ├── inherit_list.html
│ │ │ ├── inherits
│ │ │ ├── inherits.html
│ │ │ ├── localtime
│ │ │ ├── localtime.html
│ │ │ ├── lpc_info
│ │ │ ├── lpc_info.html
│ │ │ ├── max_eval_cost
│ │ │ ├── max_eval_cost.html
│ │ │ ├── memory_summary
│ │ │ ├── memory_summary.html
│ │ │ ├── named_livings
│ │ │ ├── named_livings.html
│ │ │ ├── program_info
│ │ │ ├── program_info.html
│ │ │ ├── reclaim_objects
│ │ │ ├── reclaim_objects.html
│ │ │ ├── replace_program
│ │ │ ├── replace_program.html
│ │ │ ├── replaceable
│ │ │ ├── replaceable.html
│ │ │ ├── reset_eval_cost
│ │ │ ├── reset_eval_cost.html
│ │ │ ├── set_eval_limit
│ │ │ ├── set_eval_limit.html
│ │ │ ├── set_reset
│ │ │ ├── set_reset.html
│ │ │ ├── shallow_inherit_list
│ │ │ ├── shallow_inherit_list.html
│ │ │ ├── shutdown
│ │ │ ├── shutdown.html
│ │ │ ├── time
│ │ │ ├── time.html
│ │ │ ├── uptime
│ │ │ ├── uptime.html
│ │ │ ├── variables
│ │ │ └── variables.html
│ ├── index
│ ├── index.html
│ └── lpc
│ │ ├── constructs
│ │ ├── for
│ │ ├── function
│ │ ├── if
│ │ ├── include
│ │ ├── inherit
│ │ ├── prototypes
│ │ ├── ref
│ │ ├── ref.html
│ │ ├── switch
│ │ └── while
│ │ └── types
│ │ ├── buffer
│ │ ├── float
│ │ ├── function
│ │ ├── function.html
│ │ ├── general
│ │ ├── mappings
│ │ ├── strings
│ │ └── substructures
├── nroff
│ ├── Credits.docs
│ ├── Email
│ ├── FTP
│ ├── History.MudOS
│ ├── Install.MudOS
│ ├── Platforms.MudOS
│ ├── README
│ ├── Running.MudOS
│ ├── applies
│ │ ├── __INIT.4
│ │ ├── clean_up.4
│ │ ├── create.4
│ │ ├── id.4
│ │ ├── init.4
│ │ ├── interactive
│ │ │ ├── catch_tell.4
│ │ │ ├── logon.4
│ │ │ ├── net_dead.4
│ │ │ ├── process_input.4
│ │ │ ├── receive_message.4
│ │ │ ├── receive_snoop.4
│ │ │ ├── telnet_suboption.4
│ │ │ ├── terminal_type.4
│ │ │ └── write_prompt.4
│ │ ├── master
│ │ │ ├── author_file.4
│ │ │ ├── compile_object.4
│ │ │ ├── connect.4
│ │ │ ├── crash.4
│ │ │ ├── creator_file.4
│ │ │ ├── domain_file.4
│ │ │ ├── epilog.4
│ │ │ ├── error_handler.4
│ │ │ ├── flag.4
│ │ │ ├── get_bb_uid.4
│ │ │ ├── get_root_uid.4
│ │ │ ├── get_save_file_name.4
│ │ │ ├── log_error.4
│ │ │ ├── make_path_absolute.4
│ │ │ ├── object_name.4
│ │ │ ├── preload.4
│ │ │ ├── privs_file.4
│ │ │ ├── retrieve_ed_setup.4
│ │ │ ├── save_ed_setup.4
│ │ │ ├── slow_shutdown.4
│ │ │ ├── valid_asm.4
│ │ │ ├── valid_bind.4
│ │ │ ├── valid_compile_to_c.4
│ │ │ ├── valid_hide.4
│ │ │ ├── valid_link.4
│ │ │ ├── valid_object.4
│ │ │ ├── valid_override.4
│ │ │ ├── valid_read.4
│ │ │ ├── valid_save_binary.4
│ │ │ ├── valid_seteuid.4
│ │ │ ├── valid_shadow.4
│ │ │ ├── valid_socket.4
│ │ │ ├── valid_write.4
│ │ │ └── view_errors.4
│ │ ├── move_or_destruct.4
│ │ └── reset.4
│ ├── concepts
│ │ ├── MudOSdriver
│ │ ├── global_include_file
│ │ ├── lpc
│ │ ├── message_doc
│ │ ├── objects
│ │ ├── oop
│ │ ├── preprocessor
│ │ ├── simul_efun
│ │ └── socket_efuns
│ ├── convert.sh
│ ├── defines
│ │ ├── BSDMALLOC
│ │ ├── CHECK_MEMORY
│ │ ├── DEBUGMALLOC
│ │ ├── DEBUGMALLOC_EXTENSIONS
│ │ ├── DO_MSTATS
│ │ ├── HAS_STATUS_TYPE
│ │ ├── README-DEFINES
│ │ ├── SMALLOC
│ │ ├── SYSMALLOC
│ │ ├── WRAPPEDMALLOC
│ │ └── lpc
│ │ │ ├── HAS_CACHE_STATS
│ │ │ ├── HAS_DEBUGMALLOC
│ │ │ ├── HAS_DEBUG_LEVEL
│ │ │ ├── HAS_EACH
│ │ │ ├── HAS_ED
│ │ │ ├── HAS_LIGHT
│ │ │ ├── HAS_MATH
│ │ │ ├── HAS_MATRIX
│ │ │ ├── HAS_MUDLIB_ERROR_HANDLER
│ │ │ ├── HAS_MUDLIB_STATS
│ │ │ ├── HAS_OPCPROF
│ │ │ ├── HAS_PRINTF
│ │ │ ├── HAS_PRIVS
│ │ │ ├── HAS_RUSAGE
│ │ │ ├── HAS_SHADOWS
│ │ │ ├── HAS_SOCKETS
│ │ │ ├── LPC3
│ │ │ ├── MUDOS
│ │ │ ├── MUD_NAME
│ │ │ ├── README
│ │ │ ├── SAVE_EXTENSION
│ │ │ ├── USE_EUID
│ │ │ ├── __ARCH__
│ │ │ ├── __DIR__
│ │ │ ├── __FILE__
│ │ │ ├── __PORT__
│ │ │ └── __VERSION__
│ ├── driver
│ │ ├── adding_efuns
│ │ ├── done-lars
│ │ ├── done-mudos
│ │ ├── malloc
│ │ └── stackmachine
│ ├── efuns
│ │ ├── arrays
│ │ │ ├── allocate.3
│ │ │ ├── arrayp.3
│ │ │ ├── filter_array.3
│ │ │ ├── map_array.3
│ │ │ ├── member_array.3
│ │ │ ├── pointerp.3
│ │ │ ├── sort_array.3
│ │ │ └── unique_array.3
│ │ ├── buffers
│ │ │ ├── allocate_buffer.3
│ │ │ ├── bufferp.3
│ │ │ ├── crc32.3
│ │ │ ├── read_buffer.3
│ │ │ └── write_buffer.3
│ │ ├── calls
│ │ │ ├── call_other.3
│ │ │ ├── call_out.3
│ │ │ ├── catch.3
│ │ │ ├── origin.3
│ │ │ ├── previous_object.3
│ │ │ ├── query_shadowing.3
│ │ │ ├── remove_call_out.3
│ │ │ ├── shadow.3
│ │ │ ├── this_object.3
│ │ │ └── throw.3
│ │ ├── compile
│ │ │ └── generate_source.3
│ │ ├── ed
│ │ │ ├── ed_cmd.3
│ │ │ ├── ed_start.3
│ │ │ └── query_ed_mode.3
│ │ ├── filesystem
│ │ │ ├── cp.3
│ │ │ ├── file_size.3
│ │ │ ├── get_dir.3
│ │ │ ├── link.3
│ │ │ ├── mkdir.3
│ │ │ ├── read_bytes.3
│ │ │ ├── read_file.3
│ │ │ ├── rename.3
│ │ │ ├── rm.3
│ │ │ ├── rmdir.3
│ │ │ ├── stat.3
│ │ │ ├── tail.3
│ │ │ ├── write_bytes.3
│ │ │ └── write_file.3
│ │ ├── floats
│ │ │ ├── acos.3
│ │ │ ├── asin.3
│ │ │ ├── atan.3
│ │ │ ├── ceil.3
│ │ │ ├── cos.3
│ │ │ ├── exp.3
│ │ │ ├── floatp.3
│ │ │ ├── floor.3
│ │ │ ├── log.3
│ │ │ ├── pow.3
│ │ │ ├── sin.3
│ │ │ ├── sqrt.3
│ │ │ ├── tan.3
│ │ │ └── to_int.3
│ │ ├── functions
│ │ │ ├── apply.3
│ │ │ ├── bind.3
│ │ │ ├── evaluate.3
│ │ │ └── functionp.3
│ │ ├── general
│ │ │ ├── map.3
│ │ │ ├── nullp.3
│ │ │ ├── restore_variable.3
│ │ │ ├── save_variable.3
│ │ │ ├── sizeof.3
│ │ │ ├── typeof.3
│ │ │ └── undefinedp.3
│ │ ├── interactive
│ │ │ ├── add_action.3
│ │ │ ├── command.3
│ │ │ ├── commands.3
│ │ │ ├── disable_commands.3
│ │ │ ├── disable_wizard.3
│ │ │ ├── ed.3
│ │ │ ├── enable_commands.3
│ │ │ ├── exec.3
│ │ │ ├── find_player.3
│ │ │ ├── get_char.3
│ │ │ ├── in_edit.3
│ │ │ ├── in_input.3
│ │ │ ├── input_to.3
│ │ │ ├── interactive.3
│ │ │ ├── message.3
│ │ │ ├── notify_fail.3
│ │ │ ├── printf.3
│ │ │ ├── query_host_name.3
│ │ │ ├── query_idle.3
│ │ │ ├── query_ip_name.3
│ │ │ ├── query_ip_number.3
│ │ │ ├── query_snoop.3
│ │ │ ├── query_snooping.3
│ │ │ ├── receive.3
│ │ │ ├── remove_action.3
│ │ │ ├── resolve.3
│ │ │ ├── say.3
│ │ │ ├── set_this_player.3
│ │ │ ├── shout.3
│ │ │ ├── snoop.3
│ │ │ ├── this_interactive.3
│ │ │ ├── this_player.3
│ │ │ ├── userp.3
│ │ │ ├── users.3
│ │ │ └── write.3
│ │ ├── internals
│ │ │ ├── cache_stats.3
│ │ │ ├── debug_info.3
│ │ │ ├── debugmalloc.3
│ │ │ ├── dump_file_descriptors.3
│ │ │ ├── dump_prog.3
│ │ │ ├── dump_socket_status.3
│ │ │ ├── dumpallobj.3
│ │ │ ├── get_config.3
│ │ │ ├── malloc_status.3
│ │ │ ├── memory_info.3
│ │ │ ├── moncontrol.3
│ │ │ ├── mud_status.3
│ │ │ ├── opcprof.3
│ │ │ ├── query_load_average.3
│ │ │ ├── refs.3
│ │ │ ├── rusage.3
│ │ │ ├── set_debug_level.3
│ │ │ ├── set_malloc_mask.3
│ │ │ ├── swap.3
│ │ │ ├── time_expression.3
│ │ │ ├── trace.3
│ │ │ └── traceprefix.3
│ │ ├── mappings
│ │ │ ├── allocate_mapping.3
│ │ │ ├── each.3
│ │ │ ├── filter_mapping.3
│ │ │ ├── keys.3
│ │ │ ├── map_delete.3
│ │ │ ├── map_mapping.3
│ │ │ ├── mapp.3
│ │ │ ├── match_path.3
│ │ │ ├── unique_mapping.3
│ │ │ └── values.3
│ │ ├── mudlib
│ │ │ ├── author_stats.3
│ │ │ ├── domain_stats.3
│ │ │ ├── enable_wizard.3
│ │ │ ├── export_uid.3
│ │ │ ├── find_living.3
│ │ │ ├── geteuid.3
│ │ │ ├── getuid.3
│ │ │ ├── living.3
│ │ │ ├── livings.3
│ │ │ ├── query_privs.3
│ │ │ ├── set_author.3
│ │ │ ├── set_light.3
│ │ │ ├── set_living_name.3
│ │ │ ├── set_privs.3
│ │ │ ├── seteuid.3
│ │ │ └── wizardp.3
│ │ ├── numbers
│ │ │ ├── intp.3
│ │ │ ├── random.3
│ │ │ └── to_float.3
│ │ ├── objects
│ │ │ ├── all_inventory.3
│ │ │ ├── children.3
│ │ │ ├── clone_object.3
│ │ │ ├── clonep.3
│ │ │ ├── deep_inventory.3
│ │ │ ├── destruct.3
│ │ │ ├── environment.3
│ │ │ ├── file_name.3
│ │ │ ├── find_object.3
│ │ │ ├── first_inventory.3
│ │ │ ├── load_object.3
│ │ │ ├── master.3
│ │ │ ├── move_object.3
│ │ │ ├── new.3
│ │ │ ├── next_inventory.3
│ │ │ ├── objectp.3
│ │ │ ├── objects.3
│ │ │ ├── present.3
│ │ │ ├── query_heart_beat.3
│ │ │ ├── reload_object.3
│ │ │ ├── restore_object.3
│ │ │ ├── save_object.3
│ │ │ ├── set_heart_beat.3
│ │ │ ├── set_hide.3
│ │ │ ├── tell_object.3
│ │ │ ├── tell_room.3
│ │ │ └── virtualp.3
│ │ ├── parsing
│ │ │ ├── parse_command.3
│ │ │ ├── process_string.3
│ │ │ ├── process_value.3
│ │ │ └── query_verb.3
│ │ ├── sockets
│ │ │ ├── socket_accept.3
│ │ │ ├── socket_acquire.3
│ │ │ ├── socket_address.3
│ │ │ ├── socket_bind.3
│ │ │ ├── socket_close.3
│ │ │ ├── socket_connect.3
│ │ │ ├── socket_create.3
│ │ │ ├── socket_error.3
│ │ │ ├── socket_listen.3
│ │ │ ├── socket_release.3
│ │ │ └── socket_write.3
│ │ ├── strings
│ │ │ ├── break_string.3
│ │ │ ├── capitalize.3
│ │ │ ├── clear_bit.3
│ │ │ ├── crypt.3
│ │ │ ├── explode.3
│ │ │ ├── implode.3
│ │ │ ├── lower_case.3
│ │ │ ├── reg_assoc.3
│ │ │ ├── regexp.3
│ │ │ ├── replace_string.3
│ │ │ ├── set_bit.3
│ │ │ ├── sprintf.3
│ │ │ ├── sscanf.3
│ │ │ ├── strcmp.3
│ │ │ ├── stringp.3
│ │ │ ├── strlen.3
│ │ │ ├── strsrch.3
│ │ │ └── test_bit.3
│ │ └── system
│ │ │ ├── all_previous_objects.3
│ │ │ ├── call_out_info.3
│ │ │ ├── ctime.3
│ │ │ ├── deep_inherit_list.3
│ │ │ ├── error.3
│ │ │ ├── errorp.3
│ │ │ ├── eval_cost.3
│ │ │ ├── find_call_out.3
│ │ │ ├── function_exists.3
│ │ │ ├── function_profile.3
│ │ │ ├── inherit_list.3
│ │ │ ├── inherits.3
│ │ │ ├── localtime.3
│ │ │ ├── max_eval_cost.3
│ │ │ ├── reclaim_objects.3
│ │ │ ├── replace_program.3
│ │ │ ├── reset_eval_cost.3
│ │ │ ├── set_eval_limit.3
│ │ │ ├── set_reset.3
│ │ │ ├── shutdown.3
│ │ │ ├── time.3
│ │ │ └── uptime.3
│ ├── lpc
│ │ ├── constructs
│ │ │ ├── for
│ │ │ ├── function
│ │ │ ├── if
│ │ │ ├── include
│ │ │ ├── inherit
│ │ │ ├── prototypes
│ │ │ ├── switch
│ │ │ └── while
│ │ ├── preprocessor
│ │ │ ├── README
│ │ │ ├── define
│ │ │ └── include
│ │ └── types
│ │ │ ├── array.2d
│ │ │ ├── buffer
│ │ │ ├── float
│ │ │ ├── function
│ │ │ ├── general
│ │ │ ├── mappings
│ │ │ ├── strings
│ │ │ └── substructures
│ ├── man2ascii.sh
│ └── platforms
│ │ ├── Alpha-OSF1
│ │ ├── DEC-Ultrix
│ │ ├── HP-UX
│ │ ├── Irix
│ │ ├── Linux
│ │ ├── NeXT
│ │ └── RS6000
└── text
│ ├── applies
│ ├── __INIT
│ ├── clean_up
│ ├── create
│ ├── heart_beat
│ ├── id
│ ├── index
│ ├── init
│ ├── interactive
│ │ ├── catch_tell
│ │ ├── index
│ │ ├── logon
│ │ ├── net_dead
│ │ ├── process_input
│ │ ├── receive_message
│ │ ├── receive_snoop
│ │ ├── telnet_suboption
│ │ ├── terminal_type
│ │ ├── window_size
│ │ └── write_prompt
│ ├── master
│ │ ├── author_file
│ │ ├── compile_object
│ │ ├── connect
│ │ ├── crash
│ │ ├── creator_file
│ │ ├── domain_file
│ │ ├── epilog
│ │ ├── error_handler
│ │ ├── flag
│ │ ├── get_bb_uid
│ │ ├── get_root_uid
│ │ ├── get_save_file_name
│ │ ├── index
│ │ ├── log_error
│ │ ├── make_path_absolute
│ │ ├── object_name
│ │ ├── parse_command_all_word
│ │ ├── parse_command_prepos_list
│ │ ├── preload
│ │ ├── privs_file
│ │ ├── retrieve_ed_setup
│ │ ├── save_ed_setup
│ │ ├── slow_shutdown
│ │ ├── valid_bind
│ │ ├── valid_compile_to_c
│ │ ├── valid_hide
│ │ ├── valid_link
│ │ ├── valid_object
│ │ ├── valid_override
│ │ ├── valid_read
│ │ ├── valid_save_binary
│ │ ├── valid_seteuid
│ │ ├── valid_shadow
│ │ ├── valid_socket
│ │ └── valid_write
│ ├── move_or_destruct
│ ├── parsing
│ │ ├── index
│ │ ├── parse_command_adjectiv_id_list
│ │ ├── parse_command_id_list
│ │ └── parse_command_plural_id_list
│ └── reset
│ ├── concepts
│ ├── MudOSdriver
│ ├── defines
│ ├── index
│ ├── lpc
│ ├── message_doc
│ ├── objects
│ ├── oop
│ ├── preprocessor
│ ├── simul_efun
│ └── socket_efuns
│ ├── driver
│ ├── adding_efuns
│ ├── done-lars
│ ├── done-mudos
│ ├── index
│ ├── malloc
│ └── stackmachine
│ ├── efuns
│ ├── TODO
│ ├── arrays
│ │ ├── allocate
│ │ ├── filter_array
│ │ ├── index
│ │ ├── map_array
│ │ ├── member_array
│ │ ├── sort_array
│ │ └── unique_array
│ ├── buffers
│ │ ├── allocate_buffer
│ │ ├── crc32
│ │ ├── index
│ │ ├── read_buffer
│ │ └── write_buffer
│ ├── calls
│ │ ├── call_other
│ │ ├── call_out
│ │ ├── call_stack
│ │ ├── catch
│ │ ├── index
│ │ ├── origin
│ │ ├── previous_object
│ │ ├── query_shadowing
│ │ ├── remove_call_out
│ │ ├── remove_shadow
│ │ ├── shadow
│ │ ├── this_object
│ │ └── throw
│ ├── compile
│ │ ├── generate_source
│ │ └── index
│ ├── filesystem
│ │ ├── cp
│ │ ├── file_length
│ │ ├── file_size
│ │ ├── get_dir
│ │ ├── index
│ │ ├── link
│ │ ├── mkdir
│ │ ├── read_bytes
│ │ ├── read_file
│ │ ├── rename
│ │ ├── rm
│ │ ├── rmdir
│ │ ├── stat
│ │ ├── write_bytes
│ │ └── write_file
│ ├── floats
│ │ ├── acos
│ │ ├── asin
│ │ ├── atan
│ │ ├── ceil
│ │ ├── cos
│ │ ├── exp
│ │ ├── floor
│ │ ├── index
│ │ ├── log
│ │ ├── pow
│ │ ├── sin
│ │ ├── sqrt
│ │ ├── tan
│ │ └── to_int
│ ├── functions
│ │ ├── bind
│ │ ├── evaluate
│ │ ├── function_owner
│ │ └── index
│ ├── general
│ │ ├── copy
│ │ ├── fetch_variable
│ │ ├── filter
│ │ ├── index
│ │ ├── map
│ │ ├── restore_variable
│ │ ├── save_variable
│ │ ├── sizeof
│ │ ├── store_variable
│ │ └── typeof
│ ├── index
│ ├── interactive
│ │ ├── add_action
│ │ ├── command
│ │ ├── commands
│ │ ├── disable_commands
│ │ ├── disable_wizard
│ │ ├── ed
│ │ ├── ed_cmd
│ │ ├── ed_start
│ │ ├── enable_commands
│ │ ├── enable_wizard
│ │ ├── exec
│ │ ├── find_player
│ │ ├── get_char
│ │ ├── in_edit
│ │ ├── in_input
│ │ ├── index
│ │ ├── input_to
│ │ ├── interactive
│ │ ├── message
│ │ ├── notify_fail
│ │ ├── printf
│ │ ├── query_ed_mode
│ │ ├── query_host_name
│ │ ├── query_idle
│ │ ├── query_ip_name
│ │ ├── query_ip_number
│ │ ├── query_ip_port
│ │ ├── query_notify_fail
│ │ ├── query_snoop
│ │ ├── query_snooping
│ │ ├── receive
│ │ ├── remove_action
│ │ ├── remove_interactive
│ │ ├── resolve
│ │ ├── say
│ │ ├── set_this_player
│ │ ├── shout
│ │ ├── snoop
│ │ ├── this_interactive
│ │ ├── this_player
│ │ ├── this_user
│ │ ├── userp
│ │ ├── users
│ │ ├── wizardp
│ │ └── write
│ ├── internals
│ │ ├── cache_stats
│ │ ├── debug_info
│ │ ├── debugmalloc
│ │ ├── dump_file_descriptors
│ │ ├── dump_prog
│ │ ├── dump_socket_status
│ │ ├── dumpallobj
│ │ ├── get_config
│ │ ├── index
│ │ ├── malloc_status
│ │ ├── memory_info
│ │ ├── mud_status
│ │ ├── opcprof
│ │ ├── query_load_average
│ │ ├── refs
│ │ ├── rusage
│ │ ├── set_debug_level
│ │ ├── set_malloc_mask
│ │ ├── swap
│ │ ├── time_expression
│ │ ├── trace
│ │ └── traceprefix
│ ├── mappings
│ │ ├── allocate_mapping
│ │ ├── filter_mapping
│ │ ├── index
│ │ ├── keys
│ │ ├── m_delete
│ │ ├── m_indices
│ │ ├── m_values
│ │ ├── map_delete
│ │ ├── map_mapping
│ │ ├── match_path
│ │ ├── unique_mapping
│ │ └── values
│ ├── mixed
│ │ ├── arrayp
│ │ ├── bufferp
│ │ ├── classp
│ │ ├── floatp
│ │ ├── functionp
│ │ ├── intp
│ │ ├── mapp
│ │ ├── objectp
│ │ ├── pointerp
│ │ ├── stringp
│ │ └── undefinedp
│ ├── mudlib
│ │ ├── author_stats
│ │ ├── domain_stats
│ │ ├── export_uid
│ │ ├── find_living
│ │ ├── geteuid
│ │ ├── getuid
│ │ ├── index
│ │ ├── living
│ │ ├── livings
│ │ ├── query_privs
│ │ ├── set_author
│ │ ├── set_light
│ │ ├── set_living_name
│ │ ├── set_privs
│ │ └── seteuid
│ ├── numbers
│ │ ├── index
│ │ ├── random
│ │ └── to_float
│ ├── objects
│ │ ├── all_inventory
│ │ ├── children
│ │ ├── clone_object
│ │ ├── clonep
│ │ ├── deep_inventory
│ │ ├── destruct
│ │ ├── environment
│ │ ├── file_name
│ │ ├── find_object
│ │ ├── first_inventory
│ │ ├── heart_beat_info
│ │ ├── heart_beats
│ │ ├── index
│ │ ├── load_object
│ │ ├── master
│ │ ├── move_object
│ │ ├── new
│ │ ├── next_inventory
│ │ ├── objects
│ │ ├── present
│ │ ├── query_heart_beat
│ │ ├── reload_object
│ │ ├── restore_object
│ │ ├── save_object
│ │ ├── set_heart_beat
│ │ ├── set_hide
│ │ ├── tell_object
│ │ ├── tell_room
│ │ └── virtualp
│ ├── parsing
│ │ ├── TODO
│ │ ├── index
│ │ └── query_verb
│ ├── sockets
│ │ ├── index
│ │ ├── socket_accept
│ │ ├── socket_acquire
│ │ ├── socket_address
│ │ ├── socket_bind
│ │ ├── socket_close
│ │ ├── socket_connect
│ │ ├── socket_create
│ │ ├── socket_error
│ │ ├── socket_error.h
│ │ ├── socket_listen
│ │ ├── socket_release
│ │ └── socket_write
│ ├── strings
│ │ ├── capitalize
│ │ ├── clear_bit
│ │ ├── crypt
│ │ ├── explode
│ │ ├── implode
│ │ ├── index
│ │ ├── lower_case
│ │ ├── pluralize
│ │ ├── reg_assoc
│ │ ├── regexp
│ │ ├── repeat_string
│ │ ├── replace_string
│ │ ├── set_bit
│ │ ├── sprintf
│ │ ├── sscanf
│ │ ├── strcmp
│ │ ├── strlen
│ │ ├── strsrch
│ │ ├── terminal_colour
│ │ ├── test_bit
│ │ └── upper_case
│ └── system
│ │ ├── all_previous_objects
│ │ ├── call_out_info
│ │ ├── check_memory
│ │ ├── ctime
│ │ ├── deep_inherit_list
│ │ ├── error
│ │ ├── eval_cost
│ │ ├── external_start
│ │ ├── find_call_out
│ │ ├── flush_messages
│ │ ├── function_exists
│ │ ├── function_profile
│ │ ├── functions
│ │ ├── index
│ │ ├── inherit_list
│ │ ├── inherits
│ │ ├── localtime
│ │ ├── lpc_info
│ │ ├── max_eval_cost
│ │ ├── memory_summary
│ │ ├── named_livings
│ │ ├── program_info
│ │ ├── reclaim_objects
│ │ ├── replace_program
│ │ ├── replaceable
│ │ ├── reset_eval_cost
│ │ ├── set_eval_limit
│ │ ├── set_reset
│ │ ├── shallow_inherit_list
│ │ ├── shutdown
│ │ ├── time
│ │ ├── uptime
│ │ └── variables
│ ├── index
│ └── lpc
│ ├── constructs
│ ├── for
│ ├── function
│ ├── if
│ ├── include
│ ├── inherit
│ ├── prototypes
│ ├── ref
│ ├── switch
│ └── while
│ └── types
│ ├── array.2d
│ ├── buffer
│ ├── float
│ ├── function
│ ├── general
│ ├── mappings
│ ├── strings
│ └── substructures
└── src
├── .gitignore
├── 32bitmalloc.c
├── 64bitmalloc.c
├── Artistic.README
├── Bugs
├── ChangeLog
├── ChangeLog.alpha
├── ChangeLog.beta
├── ChangeLog.fluffos
├── ChangeLog.fluffos-2.x
├── Config.example
├── Copyright
├── Credits.LPmud
├── Credits.MudOS
├── Dependencies
├── Exit_Codes
├── GNUmakefile.debug
├── GNUmakefile.in
├── GNUmakefile.keep
├── INSTALL
├── IT_CRASHED
├── Ideas
├── Makefile
├── Makefile.in
├── Makefile.in.pre
├── NMakefile.in
├── NMakefile.in.pre
├── Performance
├── Platforms
├── README
├── Version
├── Win32
├── ar.c
├── configure.h
├── cp.bat
├── mv.bat
├── rm.bat
└── touch.c
├── add_action.c
├── add_action.h
├── addr_server.c
├── addr_server.h
├── applies
├── arch.h
├── array.c
├── array.h
├── avltree.c
├── avltree.h
├── backend.c
├── backend.h
├── bsdmalloc.c
├── bsdmalloc.h
├── buffer.c
├── buffer.h
├── build.FluffOS
├── buildMudOS.bat
├── call_out.c
├── call_out.h
├── class.c
├── class.h
├── comm.c
├── comm.h
├── compat
├── fixstatic
├── parser_error.c
└── simuls
│ ├── apply.c
│ ├── break_string.c
│ ├── dump_socket_status.c
│ ├── parse_command.c
│ ├── process_string.c
│ └── tail.c
├── compiler.c
├── compiler.h
├── config.h
├── console.c
├── console.h
├── crc32.c
├── crc32.h
├── crctab.h
├── crypt.c
├── crypt.h
├── debug.c
├── debug.h
├── debugmalloc.c
├── debugmalloc.h
├── disassembler.c
├── dtrace_compile.c
├── dumpstat.c
├── dumpstat.h
├── ed.c
├── ed.h
├── edit_source.c
├── edit_source.h
├── efuns_incl.h
├── efuns_main.c
├── efuns_main.h
├── efuns_port.c
├── eoperators.c
├── eoperators.h
├── eval.c
├── eval.h
├── file.c
├── file.h
├── file_incl.h
├── fliconv.c
├── fliconv.h
├── fluffos.d
├── func_spec.c
├── function.c
├── function.h
├── gcmalloc.c
├── generate.c
├── generate.h
├── gnumalloc.c
├── gnumalloc.h
├── grammar.y.pre
├── hash.c
├── hash.h
├── icode.c
├── icode.h
├── include
├── function.h
├── localtime.h
├── origin.h
├── parser_error.h
├── runtime_config.h
├── semantic.cache
├── socket_err.h
└── type.h
├── interpret.c
├── interpret.h
├── lag.d
├── lag.stp
├── lex.c
├── lex.h
├── local_options.ds
├── local_options.ds.debug
├── local_options.dw
├── local_options.dwclone
├── local_options.foundation
├── local_options.foundation2
├── local_options.fr
├── local_options.lil
├── local_options.lima
├── local_options.lpuni
├── local_options.merentha
├── local_options.nm3
├── local_options.nm4
├── local_options.sapid
├── local_options.skylib
├── local_options.test
├── local_options.tmi2
├── lpc.h
├── lpc_incl.h
├── macros.h
├── main.c
├── main.h
├── make_func.h
├── make_func.y
├── make_malloc.c
├── malloc_incl.h
├── mapping.c
├── mapping.h
├── master.c
├── master.h
├── md.c
├── md.h
├── mmalloc.c
├── my_malloc.h
├── network_incl.h
├── obj
└── .gitignore
├── object.c
├── object.h
├── op_spec.c
├── options.h
├── origin.h
├── otable.c
├── otable.h
├── packages
├── .gitignore
├── GNUmakefile.pre
├── Makefile.master
├── Makefile.pre
├── README
├── async.c
├── async.h
├── async_spec.c
├── compress.c
├── compress_spec.c
├── contrib.c
├── contrib_spec.c
├── crypto.c
├── crypto_spec.c
├── db.c
├── db.h
├── db_spec.c
├── debug.c
├── debug.h
├── debug_spec.c
├── develop.c
├── develop_spec.c
├── dslib.c
├── dslib_spec.c
├── dwlib.c
├── dwlib_spec.c
├── external.c
├── external_spec.c
├── math.c
├── math_spec.c
├── matrix.c
├── matrix.h
├── matrix_spec.c
├── mudlib_stats.c
├── mudlib_stats.h
├── mudlib_stats_spec.c
├── parser.c
├── parser.h
├── parser_spec.c
├── pcre.c
├── pcre.h
├── pcre_spec.c
├── readme
├── sha1.c
├── sha1_spec.c
├── sockets.c
├── sockets_spec.c
├── uids.c
├── uids.h
└── uids_spec.c
├── parse.c
├── parse.h
├── parse_trees
├── patchlevel.h
├── plainwrapper.c
├── port.c
├── port.h
├── portability.h
├── portbind.c
├── posix_timers.c
├── posix_timers.h
├── preprocess.c
├── preprocess.h
├── program.c
├── program.h
├── qsort.c
├── qsort.h
├── rc.c
├── rc.h
├── reclaim.c
├── reclaim.h
├── regexp.c
├── regexp.h
├── replace_program.c
├── replace_program.h
├── scratchpad.c
├── scratchpad.h
├── simul_efun.c
├── simul_efun.h
├── simulate.c
├── simulate.h
├── smalloc.c
├── smalloc.h
├── socket_ctrl.c
├── socket_ctrl.h
├── socket_efuns.c
├── socket_efuns.h
├── socket_err.c
├── socket_err.h
├── spec.h
├── sprintf.c
├── sprintf.h
├── std.h
├── std_incl.h
├── stralloc.c
├── stralloc.h
├── sysmalloc.c
├── telnet.h
├── testsuite
├── .edrc
├── README
├── clone
│ ├── README
│ ├── login.c
│ ├── readme
│ └── user.c
├── command
│ ├── README
│ ├── codefor.c
│ ├── crasher.c
│ ├── dest.c
│ ├── ed.c
│ ├── eval.c
│ ├── quit.c
│ ├── readme
│ ├── rm.c
│ ├── say.c
│ ├── shutdown.c
│ ├── speed.c
│ ├── tests.c
│ ├── update.c
│ └── who.c
├── crasher
│ ├── 1
│ ├── 2
│ ├── 4
│ ├── 5
│ ├── 7
│ ├── 8
│ ├── 9
│ ├── 11
│ ├── 12
│ ├── 13
│ ├── 14
│ ├── 16
│ └── 17
├── data
│ ├── README
│ ├── readme
│ └── sha1
│ │ ├── README
│ │ ├── Readme.txt
│ │ ├── byte-hashes.sha1
│ │ └── byte-messages.sha1
├── etc
│ ├── config.test
│ └── motd
├── include
│ ├── README
│ ├── command.h
│ ├── config.h
│ ├── globals.h
│ ├── lpctypes.h
│ ├── readme
│ └── tests.h
├── inherit
│ ├── README
│ ├── base.c
│ ├── clean_up.c
│ ├── master
│ │ └── valid.c
│ ├── readme
│ └── tests.c
├── log
│ ├── README
│ └── readme
├── readme
├── single
│ ├── README
│ ├── inh.c
│ ├── master.c
│ ├── readme
│ ├── simul_efun.c
│ ├── tests
│ │ ├── compiler
│ │ │ ├── 64bit.c
│ │ │ ├── at_block.c
│ │ │ ├── constant_expr.c
│ │ │ ├── fail
│ │ │ │ ├── arr_index.c
│ │ │ │ ├── bad_break.c
│ │ │ │ ├── bad_continue.c
│ │ │ │ ├── bad_for_init.c
│ │ │ │ ├── bad_foreach.c
│ │ │ │ ├── bad_init.c
│ │ │ │ ├── bad_local_init.c
│ │ │ │ ├── bad_local_init2.c
│ │ │ │ ├── bad_param.c
│ │ │ │ ├── bad_param2.c
│ │ │ │ ├── bad_return.c
│ │ │ │ ├── bad_return2.c
│ │ │ │ ├── bad_type_init.c
│ │ │ │ ├── class_redef.c
│ │ │ │ ├── div_zero.c
│ │ │ │ ├── div_zero3.c
│ │ │ │ ├── eof_in_comment.c
│ │ │ │ ├── eof_in_string.c
│ │ │ │ ├── local_redef.c
│ │ │ │ ├── local_redef2.c
│ │ │ │ ├── lvar_func.c
│ │ │ │ ├── lvar_func2.c
│ │ │ │ ├── missing_endif.c
│ │ │ │ ├── missing_type.c
│ │ │ │ ├── mixed_case.c
│ │ │ │ ├── mod_zero.c
│ │ │ │ ├── no_member.c
│ │ │ │ ├── no_ret_type.c
│ │ │ │ ├── no_such_class.c
│ │ │ │ ├── predef.c
│ │ │ │ ├── redef_function.c
│ │ │ │ ├── static_local.c
│ │ │ │ ├── string_case.c
│ │ │ │ ├── two_default.c
│ │ │ │ ├── undef_class.c
│ │ │ │ ├── var_to_nonvar.c
│ │ │ │ ├── void_arg.c
│ │ │ │ ├── void_arg2.c
│ │ │ │ ├── void_for_var.c
│ │ │ │ ├── void_global.c
│ │ │ │ ├── void_local.c
│ │ │ │ └── void_member.c
│ │ │ └── succeed.c
│ │ ├── efuns
│ │ │ ├── README
│ │ │ ├── add_action.c
│ │ │ ├── add_light.c
│ │ │ ├── all_inventory.c
│ │ │ ├── allocate.c
│ │ │ ├── allocate_buffer.c
│ │ │ ├── allocate_mapping.c
│ │ │ ├── badshad.c
│ │ │ ├── bind.c
│ │ │ ├── break_string.c
│ │ │ ├── cache_stats.c
│ │ │ ├── call_other.c
│ │ │ ├── call_out.c
│ │ │ ├── call_stack.c
│ │ │ ├── capitalize.c
│ │ │ ├── children.c
│ │ │ ├── clear_bit.c
│ │ │ ├── clone_object.c
│ │ │ ├── clonep.c
│ │ │ ├── command.c
│ │ │ ├── cp.c
│ │ │ ├── crc32.c
│ │ │ ├── ctime.c
│ │ │ ├── deep_inherit_list.c
│ │ │ ├── deep_inventory.c
│ │ │ ├── destruct.c
│ │ │ ├── disable_commands.c
│ │ │ ├── dumpallobj.c
│ │ │ ├── ed.c
│ │ │ ├── enable_wizard.c
│ │ │ ├── environment.c
│ │ │ ├── error.c
│ │ │ ├── exec.c
│ │ │ ├── explode.c
│ │ │ ├── file_name.c
│ │ │ ├── file_size.c
│ │ │ ├── filter.c
│ │ │ ├── find_call_out.c
│ │ │ ├── find_living.c
│ │ │ ├── find_object.c
│ │ │ ├── find_player.c
│ │ │ ├── function_exists.c
│ │ │ ├── function_profile.c
│ │ │ ├── functionp.c
│ │ │ ├── generate_source.c
│ │ │ ├── get_char.c
│ │ │ ├── get_config.c
│ │ │ ├── get_dir.c
│ │ │ ├── goodshad.c
│ │ │ ├── has_errors.c
│ │ │ ├── implode.c
│ │ │ ├── in_edit.c
│ │ │ ├── inh0.c
│ │ │ ├── inh1.c
│ │ │ ├── inh2.c
│ │ │ ├── inherit_list.c
│ │ │ ├── inherits.c
│ │ │ ├── input_to.c
│ │ │ ├── interactive.c
│ │ │ ├── intp.c
│ │ │ ├── keys.c
│ │ │ ├── light.c
│ │ │ ├── living.c
│ │ │ ├── livings.c
│ │ │ ├── lower_case.c
│ │ │ ├── malloc_status.c
│ │ │ ├── map.c
│ │ │ ├── map_delete.c
│ │ │ ├── mapp.c
│ │ │ ├── master.c
│ │ │ ├── match_path.c
│ │ │ ├── member_array.c
│ │ │ ├── message.c
│ │ │ ├── mkdir.c
│ │ │ ├── move_object.c
│ │ │ ├── mud_status.c
│ │ │ ├── notify_fail.c
│ │ │ ├── nullp.c
│ │ │ ├── objectp.c
│ │ │ ├── opcprof.c
│ │ │ ├── origin.c
│ │ │ ├── pointerp.c
│ │ │ ├── present.c
│ │ │ ├── previous_object.c
│ │ │ ├── printf.c
│ │ │ ├── query_ed_mode.c
│ │ │ ├── query_idle.c
│ │ │ ├── query_ip_name.c
│ │ │ ├── query_ip_number.c
│ │ │ ├── query_load_average.c
│ │ │ ├── query_privs.c
│ │ │ ├── query_snoop.c
│ │ │ ├── query_snooping.c
│ │ │ ├── query_verb.c
│ │ │ ├── random.c
│ │ │ ├── read_buffer.c
│ │ │ ├── read_bytes.c
│ │ │ ├── read_file.c
│ │ │ ├── readme
│ │ │ ├── receive.c
│ │ │ ├── reg_assoc.c
│ │ │ ├── regexp.c
│ │ │ ├── remove_action.c
│ │ │ ├── remove_call_out.c
│ │ │ ├── rename.c
│ │ │ ├── replace_string.c
│ │ │ ├── restore_object.c
│ │ │ ├── restore_variable.c
│ │ │ ├── rm.c
│ │ │ ├── rmdir.c
│ │ │ ├── save_object.c
│ │ │ ├── save_variable.c
│ │ │ ├── say.c
│ │ │ ├── set_bit.c
│ │ │ ├── set_debug_level.c
│ │ │ ├── set_heart_beat.c
│ │ │ ├── set_hide.c
│ │ │ ├── set_light.c
│ │ │ ├── set_living_name.c
│ │ │ ├── set_privs.c
│ │ │ ├── sha1.c
│ │ │ ├── shadow.c
│ │ │ ├── shutdown.c
│ │ │ ├── sizeof.c
│ │ │ ├── snoop.c
│ │ │ ├── sprintf.c
│ │ │ ├── sscanf.c
│ │ │ ├── talker.c
│ │ │ ├── to_float.c
│ │ │ ├── to_int.c
│ │ │ ├── unloaded.c
│ │ │ ├── users.c
│ │ │ └── values.c
│ │ └── operators
│ │ │ └── range.c
│ └── void.c
├── test_control.c
└── u
│ ├── README
│ └── readme
├── tmp
└── insttest
├── trees.c
├── trees.h
├── uvalarm.c
├── uvalarm.h
├── windows
├── MudOS.mak
├── README.win32
├── addr_server.mak
├── clean.bat
├── configure.h
├── edit_source.mak
├── mudos.mak
├── step1.bat
├── stepdbg.bat
└── steprel.bat
├── wrappedmalloc.c
└── wrappedmalloc.h
/Version:
--------------------------------------------------------------------------------
1 | FluffOS 2.28.3
2 |
--------------------------------------------------------------------------------
/bin/.gitignore:
--------------------------------------------------------------------------------
1 | addr_server
2 | driver
3 | portbind
4 |
5 |
--------------------------------------------------------------------------------
/doc/html/applies/__INIT:
--------------------------------------------------------------------------------
1 | __INIT - obsolete apply
2 |
3 | void __INIT();
4 |
5 | This function used to be called in objects right before create.
6 | global variable initialization is now handled by another function that
7 | cannot be interfered with, so this is no longer called.
8 |
9 | Tim Hollebeek Beek@ZorkMUD, Lima Bean, IdeaExchange, and elsewhere
10 |
--------------------------------------------------------------------------------
/doc/html/applies/heart_beat:
--------------------------------------------------------------------------------
1 | heart_beat - called periodically in objects in which it is enabled
2 |
3 | void heart_beat();
4 |
5 | If an object has called set_heart_beat(), this function will be called
6 | periodically in that object.
7 |
8 | See also:
9 | set_heart_beat
10 |
11 | Tim Hollebeek Beek@ZorkMUD, Lima Bean, IdeaExchange, and elsewhere
12 |
--------------------------------------------------------------------------------
/doc/html/applies/interactive/index:
--------------------------------------------------------------------------------
1 | Interactive applies
2 |
3 | These are the functions called in 'user' objects:
4 |
5 |
6 | * catch_tell
7 | * logon
8 | * net_dead
9 | * process_input
10 | * receive_message
11 | * receive_snoop
12 | * telnet_suboption
13 | * terminal_type
14 | * window_size
15 | * write_prompt
16 |
17 |
18 | Tim Hollebeek Beek@ZorkMUD, Lima Bean, IdeaExchange, and elsewhere
19 |
--------------------------------------------------------------------------------
/doc/html/applies/interactive/index.c.html:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/quixadhal/fluffos/a845107aab294f1d6533813c7f996ace6404f908/doc/html/applies/interactive/index.c.html
--------------------------------------------------------------------------------
/doc/html/applies/interactive/receive_message.c.html:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/quixadhal/fluffos/a845107aab294f1d6533813c7f996ace6404f908/doc/html/applies/interactive/receive_message.c.html
--------------------------------------------------------------------------------
/doc/html/applies/interactive/receive_snoop.c.html:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/quixadhal/fluffos/a845107aab294f1d6533813c7f996ace6404f908/doc/html/applies/interactive/receive_snoop.c.html
--------------------------------------------------------------------------------
/doc/html/applies/interactive/telnet_suboption.c.html:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/quixadhal/fluffos/a845107aab294f1d6533813c7f996ace6404f908/doc/html/applies/interactive/telnet_suboption.c.html
--------------------------------------------------------------------------------
/doc/html/applies/interactive/window_size:
--------------------------------------------------------------------------------
1 | window_size - report the users window size
2 |
3 | void window_size(int width, int height);
4 |
5 | window_size() is called with the user's window size, as reported by telnet
6 | negotiation. If the user's client never responds to the query, this is
7 | never called.
8 |
9 | Tim Hollebeek Beek@ZorkMUD, Lima Bean, IdeaExchange, and elsewhere
10 |
--------------------------------------------------------------------------------
/doc/html/applies/interactive/write_prompt:
--------------------------------------------------------------------------------
1 | write_prompt - called when the parser wants a prompt to be written.
2 |
3 | void write_prompt();
4 |
5 | If write_prompt is present in the player object, the driver will call it
6 | whenever the default prompt would normally be printed. The driver will
7 | not call write_prompt when the player is in input_to or ed.
8 |
9 | Tim Hollebeek Beek@ZorkMUD, Lima Bean, IdeaExchange, and elsewhere
10 |
--------------------------------------------------------------------------------
/doc/html/applies/master/get_root_uid:
--------------------------------------------------------------------------------
1 | get_root_uid - get the root uid
2 |
3 | string get_root_uid();
4 |
5 | This function is only used if PACKAGE_UIDS is used.
6 |
7 | This master apply is called by the driver each time
8 | it loads the master object, to verify that the master
9 | object has loaded, and to get the root uid defined by
10 | the mud. The function should return a string, eg "ROOT"
11 |
12 | See also:
13 | get_bb_uid
14 |
--------------------------------------------------------------------------------
/doc/html/applies/master/make_path_absolute:
--------------------------------------------------------------------------------
1 | make_path_absolute - resolve relative path name
2 |
3 | string make_path_absolute( string rel_path );
4 |
5 | This master apply is called by the ed() efun to
6 | resolve relative path names of a file to read/write, to an absolute path
7 | name.
8 |
9 | See also:
10 | ed
11 |
--------------------------------------------------------------------------------
/doc/html/applies/master/parse_command_all_word:
--------------------------------------------------------------------------------
1 | parse_command_all_word - find out what word refers to everything
2 |
3 | string parse_command_all_word();
4 |
5 | This routine is called in the master object to find out what word should
6 | be considered to refer to everyting. It is used by the parse_command() efun.
7 |
8 | See also:
9 | parse_command
10 |
--------------------------------------------------------------------------------
/doc/html/applies/master/parse_command_prepos_list:
--------------------------------------------------------------------------------
1 | parse_command_prepos_list - find out what words are valid prepositions
2 |
3 | string array parse_command_prepos_list();
4 |
5 | This routine is called in the master object to find out what words should
6 | be considered prepositions. It is used by the parsing package and the
7 | parse_command() efun.
8 |
9 | See also:
10 | parse_command
11 |
--------------------------------------------------------------------------------
/doc/html/applies/master/retrieve_ed_setup:
--------------------------------------------------------------------------------
1 | retrieve_ed_setup - retrieve a user's editor setup or configuration settings
2 |
3 | int retrieve_ed_setup( object user );
4 |
5 | This master apply is called by the ed() efun to retrieve
6 | a user's ed setup/configuration settings. This function
7 | should return the setup (contained in an int).
8 |
9 | See also:
10 | save_ed_setup
11 |
--------------------------------------------------------------------------------
/doc/html/applies/master/save_ed_setup:
--------------------------------------------------------------------------------
1 | save_ed_setup - save a user's editor setup or configuration settings
2 |
3 | int save_ed_setup( object user, int config );
4 |
5 | This master apply is called by the ed() efun to save
6 | a user's ed setup/configuration settings (contained in
7 | an int). This function should return an int for
8 | success (1 or TRUE)/failure (0 or FALSE).
9 |
10 | Seel also:
11 | retrieve_ed_setup
12 |
--------------------------------------------------------------------------------
/doc/html/applies/parsing/index:
--------------------------------------------------------------------------------
1 | Parsing applies
2 |
3 | These are the applies used by the parse_command() efun, and also the new
4 | parsing package:
5 |
6 |
7 | * parse_command_adjectiv_id_list
8 | * parse_command_id_list
9 | * parse_command_plural_id_list
10 |
11 |
12 | Tim Hollebeek Beek@ZorkMUD, Lima Bean, IdeaExchange, and elsewhere
13 |
--------------------------------------------------------------------------------
/doc/html/applies/parsing/index.c.html:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/quixadhal/fluffos/a845107aab294f1d6533813c7f996ace6404f908/doc/html/applies/parsing/index.c.html
--------------------------------------------------------------------------------
/doc/html/applies/parsing/parse_command_adjectiv_id_list.c.html:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/quixadhal/fluffos/a845107aab294f1d6533813c7f996ace6404f908/doc/html/applies/parsing/parse_command_adjectiv_id_list.c.html
--------------------------------------------------------------------------------
/doc/html/applies/parsing/parse_command_id_list:
--------------------------------------------------------------------------------
1 | parse_command_id_list - returns a list of names to the parser
2 |
3 | string array parse_command_id_list();
4 |
5 | This routine is used to find out what nouns the object responds to, and is
6 | used by the parsing package and the parse_command() efun. In addition,
7 | anything returned by the master object will work on ANY object.
8 |
9 | See also:
10 | parse_command
11 |
--------------------------------------------------------------------------------
/doc/html/applies/parsing/parse_command_id_list.c.html:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/quixadhal/fluffos/a845107aab294f1d6533813c7f996ace6404f908/doc/html/applies/parsing/parse_command_id_list.c.html
--------------------------------------------------------------------------------
/doc/html/applies/parsing/parse_command_plural_id_list.c.html:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/quixadhal/fluffos/a845107aab294f1d6533813c7f996ace6404f908/doc/html/applies/parsing/parse_command_plural_id_list.c.html
--------------------------------------------------------------------------------
/doc/html/concepts/index:
--------------------------------------------------------------------------------
1 | MudOS driver concepts
2 |
3 | This is pretty much a grab bag of stuff right now ...
4 |
5 |
6 | * MudOS driver
7 | * LPC
8 | * message()
9 | * objects
10 | * OOP
11 | * preprocessor
12 | * simul_efuns
13 | * socket_efuns
14 | * defines
15 |
16 |
17 | Tim Hollebeek Beek@ZorkMUD, Lima Bean, IdeaExchange, and elsewhere
18 |
19 |
--------------------------------------------------------------------------------
/doc/html/driver/index:
--------------------------------------------------------------------------------
1 | Driver documentation
2 |
3 | The vast majority of this is hopefully out of date, and hopefully will be
4 | rewritten soon. It is here mostly for historical reasons.
5 |
6 |
7 | * malloc
8 | * stackmachine
9 | * done-mudos
10 | * done-lars
11 | * adding_efuns
12 |
13 |
14 | Tim Hollebeek Beek@ZorkMUD, Lima Bean, IdeaExchange, and elsewhere
15 |
--------------------------------------------------------------------------------
/doc/html/efuns/TODO:
--------------------------------------------------------------------------------
1 | parse_add_rule(string, string) [PACKAGE_PARSER]
2 | parse_add_synonym(string, string, void | string) [PACKAGE_PARSER]
3 | parse_dump() [PACKAGE_PARSER]
4 | parse_init() [PACKAGE_PARSER]
5 | parse_my_rules(object, string, void | int) [PACKAGE_PARSER]
6 | parse_refresh() [PACKAGE_PARSER]
7 | parse_remove(string) [PACKAGE_PARSER]
8 | parse_sentence(string, void|int) [PACKAGE_PARSER]
9 |
--------------------------------------------------------------------------------
/doc/html/efuns/arrays/allocate:
--------------------------------------------------------------------------------
1 | allocate - allocate an array
2 |
3 | array allocate( int size );
4 |
5 | Allocate an array of elements. The number of elements must be >= 0
6 | and not bigger than a system maximum (usually ~10000). All elements are
7 | initialized to 0.
8 |
9 | See also:
10 | sizeof,
11 | allocate_mapping
12 |
13 |
--------------------------------------------------------------------------------
/doc/html/efuns/arrays/filter_array:
--------------------------------------------------------------------------------
1 | filter_array - return a selective sub-array
2 |
3 | array filter_array( array arr, string fun, object ob, mixed extra, ... );
4 |
5 | array filter_array( array arr, function f, mixed extra, ...);
6 |
7 | filter_array() is really the same as the filter() efun.
8 |
9 | See also:
10 | filter
11 |
12 | Tim Hollebeek Beek@ZorkMUD, Lima Bean, IdeaExchange, and elsewhere
13 |
--------------------------------------------------------------------------------
/doc/html/efuns/arrays/index:
--------------------------------------------------------------------------------
1 | Array efuns
2 |
3 | These efuns exist for the manipulation of array values:
4 |
5 |
6 | * allocate
7 | * arrayp
8 | * filter_array
9 | * map_array
10 | * member_array
11 | * pointerp
12 | * sort_array
13 | * unique_array
14 |
15 |
16 | Tim Hollebeek Beek@ZorkMUD, Lima Bean, IdeaExchange, and elsewhere
17 |
18 |
--------------------------------------------------------------------------------
/doc/html/efuns/arrays/map_array:
--------------------------------------------------------------------------------
1 | map_array - modify an array of elements via application of a function
2 |
3 | array map_array( array arr, string fun, object ob, mixed extra, ... );
4 |
5 | array map_array( array arr, function f, mixed extra, ... );;
6 |
7 | The map_array() efun is really just an alias for the map() efun.
8 |
9 | See also:
10 | map
11 |
--------------------------------------------------------------------------------
/doc/html/efuns/buffers/crc32:
--------------------------------------------------------------------------------
1 | crc32 - compute the cycle redundancy code for a buffer or string
2 |
3 | int crc32( buffer | string x );
4 |
5 | Computes and returns the CRC-32 code for the given buffer or string, `x'.
6 |
7 | Tim Hollebeek Beek@ZorkMUD, Lima Bean, IdeaExchange, and elsewhere
8 |
--------------------------------------------------------------------------------
/doc/html/efuns/buffers/index:
--------------------------------------------------------------------------------
1 | Buffer Efuns
2 |
3 | The following efuns are available for manipulating buffer values:
4 |
5 |
6 | * allocate_buffer
7 | * bufferp
8 | * crc32
9 | * read_buffer
10 | * write_buffer
11 |
12 |
13 | Tim Hollebeek Beek@ZorkMUD, Lima Bean, IdeaExchange, and elsewhere
14 |
15 |
--------------------------------------------------------------------------------
/doc/html/efuns/calls/this_object:
--------------------------------------------------------------------------------
1 | this_object - return the object pointer of the calling object
2 |
3 | object this_object();
4 |
5 | Return the object pointer of the current object. Useful for passing the
6 | current object to other functions.
7 |
8 | See also:
9 | this_player,
10 | previous_object,
11 | origin
12 |
13 | Tim Hollebeek Beek@ZorkMUD, Lima Bean, IdeaExchange, and elsewhere
14 |
--------------------------------------------------------------------------------
/doc/html/efuns/compile/index:
--------------------------------------------------------------------------------
1 | Compilation efuns
2 |
3 | The only efun in here currently is the LPC->C one.
4 |
5 |
6 | * generate_source
7 |
8 |
9 | Tim Hollebeek Beek@ZorkMUD, Lima Bean, IdeaExchange, and elsewhere
10 |
--------------------------------------------------------------------------------
/doc/html/efuns/filesystem/cp:
--------------------------------------------------------------------------------
1 | cp - copy a file
2 |
3 | int cp(string src, string dst);
4 |
5 | Copies the file 'src' to the file 'dst'.
6 |
7 | Returns 1 for success, returns -1 if the first src is unreadable, -2 if
8 | dst is unreadable, and -3 if an i/o error occurs.
9 |
10 | See also:
11 | rm,
12 | rmdir,
13 | rename,
14 | link
15 |
16 | Tim Hollebeek Beek@ZorkMUD, Lima Bean, IdeaExchange, and elsewhere
17 |
--------------------------------------------------------------------------------
/doc/html/efuns/filesystem/file_size:
--------------------------------------------------------------------------------
1 | file_size - get the size of a file
2 |
3 | int file_size( string file );
4 |
5 | file_size() returns the size of file 'file' in bytes. Size -1
6 | indicates that 'file' either does not exist, or that it is not
7 | readable. Size -2 indicates that 'file' is a directory.
8 |
9 | See also:
10 | file_length,
11 | stat,
12 | get_dir
13 |
--------------------------------------------------------------------------------
/doc/html/efuns/filesystem/mkdir:
--------------------------------------------------------------------------------
1 | mkdir - make a directory
2 |
3 | int mkdir( string directory );
4 |
5 | Creates the specified directory. Returns 1 if successful, 0 if not.
6 |
7 | See also:
8 | rm,
9 | rmdir,
10 | link
11 |
12 | Tim Hollebeek Beek@ZorkMUD, Lima Bean, IdeaExchange, and elsewhere
13 |
--------------------------------------------------------------------------------
/doc/html/efuns/filesystem/rename:
--------------------------------------------------------------------------------
1 | rename - rename a file
2 |
3 | int rename( string src, string dst );
4 |
5 | Renames the file 'src' to 'dst'.
6 |
7 | rename() returns zero (0) to indicate success. Nonzero indicates failure.
8 |
9 | See also:
10 | rm,
11 | rmdir,
12 | cp,
13 | link
14 |
--------------------------------------------------------------------------------
/doc/html/efuns/filesystem/rm:
--------------------------------------------------------------------------------
1 | rm - remove a file
2 |
3 | int rm( string file );
4 |
5 | Remove file `file'. Returns 0 for failure and 1 for success.
6 |
7 | See also:
8 | mkdir,
9 | rmdir,
10 | link
11 |
12 | Tim Hollebeek Beek@ZorkMUD, Lima Bean, IdeaExchange, and elsewhere
13 |
--------------------------------------------------------------------------------
/doc/html/efuns/filesystem/rmdir:
--------------------------------------------------------------------------------
1 | rmdir - remove a directory
2 |
3 | int rmdir( string dir );
4 |
5 | Remove directory `dir'.
6 | Returns nonzero for success, zero (0) for failure.
7 |
8 | See also:
9 | rm,
10 | mkdir,
11 | link
12 |
--------------------------------------------------------------------------------
/doc/html/efuns/filesystem/write_bytes:
--------------------------------------------------------------------------------
1 | write_bytes - writes a contiguous series of bytes to a file
2 |
3 | int write_bytes( string path, int start, string series );
4 |
5 | This function writes the bytes in 'series' into the file named by 'path'
6 | beginning at byte # 'start'. It returns zero (0) upon failure, 1 otherwise.
7 |
8 | See also:
9 | write_file,
10 | read_bytes
11 |
--------------------------------------------------------------------------------
/doc/html/efuns/filesystem/write_file:
--------------------------------------------------------------------------------
1 | write_file - appends a string to a file
2 |
3 | int write_file( string file, string str, int flag );
4 |
5 | Append the string `str' into the file `file'. Returns 0 or 1 for
6 | failure or success. If flag is 1, write_file overwrites instead of
7 | appending.
8 |
9 | See also:
10 | read_file,
11 | write_buffer,
12 | file_size
13 |
--------------------------------------------------------------------------------
/doc/html/efuns/floats/acos:
--------------------------------------------------------------------------------
1 | acos - return the arccosine of a float
2 |
3 | float acos( float f );
4 |
5 | This efun is available only if PACKAGE_MATH is compiled in to the driver.
6 |
7 | Returns the arccosine of its argument, `f', measured in radians.
8 |
9 | See also:
10 | asin,
11 | atan,
12 | cos,
13 | sin,
14 | tan
15 |
--------------------------------------------------------------------------------
/doc/html/efuns/floats/asin:
--------------------------------------------------------------------------------
1 | asin - return the arcsine of a float
2 |
3 | float asin( float f );
4 |
5 | This efun is only available if PACKAGE_MATH is compiled in.
6 |
7 | Returns the arcsine of its argument, `f', measured in radians.
8 |
9 | See also:
10 | acos,
11 | atan,
12 | cos,
13 | sin,
14 | tan
15 |
--------------------------------------------------------------------------------
/doc/html/efuns/floats/atan:
--------------------------------------------------------------------------------
1 | atan - return the tangent of a float
2 |
3 | float atan( float f );
4 |
5 | This efun is only available if PACKAGE_MATH is not compiled in.
6 |
7 | Returns the arctangent of its argument, `f', measured in radians.
8 |
9 | See also:
10 | acos,
11 | asin,
12 | cos,
13 | sin,
14 | tan
15 |
--------------------------------------------------------------------------------
/doc/html/efuns/floats/ceil:
--------------------------------------------------------------------------------
1 | ceil - round a float up to the nearest integer
2 |
3 | float ceil( float f );
4 |
5 | This efun is only available if PACKAGE_MATH is compiled in.
6 |
7 | Returns (as a float) the nearest integer number equal to or greater than f.
8 |
9 | See also:
10 | floor,
11 | to_int,
12 | to_float
13 |
14 | Tim Hollebeek Beek@ZorkMUD, Lima Bean, IdeaExchange, and elsewhere
15 |
--------------------------------------------------------------------------------
/doc/html/efuns/floats/cos:
--------------------------------------------------------------------------------
1 | cos - return the cosine of a float
2 |
3 | float cos( float f );
4 |
5 | This efun is only available if PACKAGE_MATH is compiled into the driver.
6 |
7 | Returns the cosine of its argument, `f', measured in radians.
8 |
9 | See also:
10 | acos,
11 | asin,
12 | atan,
13 | sin,
14 | tan
15 |
16 | Tim Hollebeek Beek@ZorkMUD, Lima Bean, IdeaExchange, and elsewhere
17 |
--------------------------------------------------------------------------------
/doc/html/efuns/floats/exp:
--------------------------------------------------------------------------------
1 | exp - find e to the power of a float
2 |
3 | float exp( float f );
4 |
5 | This efun is only available if PACKAGE_MATH is compiled in.
6 |
7 | exp() returns e^f.
8 |
9 | See also:
10 | log,
11 | pow,
12 | sqrt
13 |
14 | Tim Hollebeek Beek@ZorkMUD, Lima Bean, IdeaExchange, and elsewhere
15 |
--------------------------------------------------------------------------------
/doc/html/efuns/floats/floor:
--------------------------------------------------------------------------------
1 | floor - round a float down to the nearest integer
2 |
3 | float floor( float f );
4 |
5 | This efun is only available if PACKAGE_MATH is compiled in.
6 |
7 | Returns (as a float) the nearest integer number equal to or smaller than f.
8 |
9 | See also:
10 | ceil,
11 | to_int,
12 | to_float
13 |
--------------------------------------------------------------------------------
/doc/html/efuns/floats/index:
--------------------------------------------------------------------------------
1 | Float Efuns
2 |
3 | The following efuns provide general math library functions.
4 |
5 |
6 | * acos
7 | * asin
8 | * atan
9 | * ceil
10 | * cos
11 | * exp
12 | * floatp
13 | * floor
14 | * log
15 | * pow
16 | * sin
17 | * sqrt
18 | * tan
19 | * to_int
20 |
21 |
22 | Tim Hollebeek Beek@ZorkMUD, Lima Bean, IdeaExchange, and elsewhere
23 |
--------------------------------------------------------------------------------
/doc/html/efuns/floats/log:
--------------------------------------------------------------------------------
1 | log - returns the natural logarithm of a float
2 |
3 | float log( float f );
4 |
5 | This efun is only available if PACKAGE_MATH is compiled in.
6 |
7 | Returns the natural logarithm of its argument, `f'. `f' must be positive.
8 |
9 | See also:
10 | exp,
11 | pow,
12 | sqrt
13 |
--------------------------------------------------------------------------------
/doc/html/efuns/floats/pow:
--------------------------------------------------------------------------------
1 | pow - find an exponent of a float
2 |
3 | float pow( float x, float y );
4 |
5 | This efun is only available if PACKAGE_MATH is defined.
6 |
7 | pow() returns x to the y power. If x is 0.0, y must be positive. If x is
8 | negative, y must be an integer.
9 |
10 | See also:
11 | exp,
12 | log,
13 | sqrt
14 |
--------------------------------------------------------------------------------
/doc/html/efuns/floats/sin:
--------------------------------------------------------------------------------
1 | sin - return the sine of a float
2 |
3 | float sin( float f );
4 |
5 | This efun is only available if PACKAGE_MATH is compiled in.
6 |
7 | Returns the sine of its argument, `f', measured in radians.
8 |
9 | See also:
10 | acos,
11 | asin,
12 | atan,
13 | cos,
14 | tan
15 |
16 | Tim Hollebeek Beek@ZorkMUD, Lima Bean, IdeaExchange, and elsewhere
17 |
--------------------------------------------------------------------------------
/doc/html/efuns/floats/sqrt:
--------------------------------------------------------------------------------
1 | sqrt - returns the square root of a float
2 |
3 | float sqrt( float f );
4 |
5 | This efun is only available if PACKAGE_MATH is compiled in.
6 |
7 | sqrt() returns the non-negative square root of its argument, `f'. The value
8 | of `f' must not be negative.
9 |
10 | See also:
11 | exp,
12 | log,
13 | pow
14 |
15 | Tim Hollebeek Beek@ZorkMUD, Lima Bean, IdeaExchange, and elsewhere
16 |
--------------------------------------------------------------------------------
/doc/html/efuns/floats/tan:
--------------------------------------------------------------------------------
1 | tan - return the tangent of a float
2 |
3 | float tan( float f );
4 |
5 | This efun is only available if PACKAGE_MATH is compiled in.
6 |
7 | Returns the tangent of its argument, 'f', measured in radians.
8 |
9 | See also:
10 | acos,
11 | asin,
12 | atan,
13 | cos,
14 | sin
15 |
--------------------------------------------------------------------------------
/doc/html/efuns/functions/evaluate:
--------------------------------------------------------------------------------
1 | evaluate - evaluate a function pointer
2 |
3 | mixed evaluate(mixed f, ...);
4 |
5 | If f is a function, f is called with the rest of the arguments.
6 | Otherwise, f is returned. evaluate(f, ...) is the same as (*f)(...).
7 |
8 | Tim Hollebeek Beek@ZorkMUD, Lima Bean, IdeaExchange, and elsewhere
9 |
--------------------------------------------------------------------------------
/doc/html/efuns/functions/function_owner:
--------------------------------------------------------------------------------
1 | function_owner - return the owner of a given function.
2 |
3 | object function_owner(function);
4 |
5 | function_owner returns the object that owns the function specified by
6 | the argument.
7 |
8 | This function requires PACKAGE_CONTRIB to be defined in the options file.
9 |
10 | See also:
11 | bind
12 |
--------------------------------------------------------------------------------
/doc/html/efuns/functions/index:
--------------------------------------------------------------------------------
1 | Function efuns
2 |
3 | These efuns are for use with function pointers.
4 |
5 |
6 | * bind
7 | * evaluate
8 | * functionp
9 |
10 |
11 | Tim Hollebeek Beek@ZorkMUD, Lima Bean, IdeaExchange, and elsewhere
12 |
--------------------------------------------------------------------------------
/doc/html/efuns/general/index:
--------------------------------------------------------------------------------
1 | Efuns for general LPC values
2 |
3 | These efuns act on arbitrary values of various types.
4 |
5 |
6 | * copy
7 | * fetch_variable
8 | * filter
9 | * map
10 | * restore_variable
11 | * save_variable
12 | * store_variable
13 | * sizeof
14 | * typeof
15 | * undefinedp
16 |
17 |
18 | Tim Hollebeek Beek@ZorkMUD, Lima Bean, IdeaExchange, and elsewhere
19 |
--------------------------------------------------------------------------------
/doc/html/efuns/general/restore_variable:
--------------------------------------------------------------------------------
1 | restore_variable - restore value of a variable from a string
2 |
3 | mixed restore_variable( string value );
4 |
5 | Restores an LPC value from a string. The format used is the
6 | same format as save/restore_object.
7 |
8 | See also:
9 | save_variable,
10 | restore_object
11 |
12 | Tim Hollebeek Beek@ZorkMUD, Lima Bean, IdeaExchange, and elsewhere
13 |
--------------------------------------------------------------------------------
/doc/html/efuns/general/save_variable:
--------------------------------------------------------------------------------
1 | save_variable - save the value of variable into a string
2 |
3 | string save_variable( mixed var );
4 |
5 | Saves an LPC value into a string. The format is the same as
6 | save/restore_object.
7 |
8 | See also:
9 | restore_variable,
10 | restore_object
11 |
--------------------------------------------------------------------------------
/doc/html/efuns/general/sizeof:
--------------------------------------------------------------------------------
1 | sizeof - return the number of elements in an array
2 |
3 | int sizeof( mixed var );
4 |
5 | Return the number of elements in an array, mapping, string, class or
6 | buffer 'var'. If `var' is not an array, mapping, string, class or
7 | buffer, then zero (0) is returned.
8 |
9 | See also:
10 | strlen
11 |
--------------------------------------------------------------------------------
/doc/html/efuns/interactive/commands.c.html:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/quixadhal/fluffos/a845107aab294f1d6533813c7f996ace6404f908/doc/html/efuns/interactive/commands.c.html
--------------------------------------------------------------------------------
/doc/html/efuns/interactive/disable_commands:
--------------------------------------------------------------------------------
1 | disable_commands - makes a living object non-living
2 |
3 | void disable_commands();
4 |
5 | This efun is only available if NO_ADD_ACTION is not defined.
6 |
7 | Causes the current object to no longer be able to execute commands.
8 |
9 | See also:
10 | enable_commands
11 |
--------------------------------------------------------------------------------
/doc/html/efuns/interactive/disable_wizard:
--------------------------------------------------------------------------------
1 | disable_wizard - remove wizard priveleges from an object
2 |
3 | void disable_wizard();
4 |
5 | This efun is only available if NO_WIZARDS is not defined.
6 |
7 | The opposite of enable_wizard(). Disables wizard privileges from the
8 | current object.
9 |
10 | See also:
11 | enable_wizard,
12 | wizardp
13 |
--------------------------------------------------------------------------------
/doc/html/efuns/interactive/ed_cmd:
--------------------------------------------------------------------------------
1 | ed_cmd - perform an 'ed' command
2 |
3 | This efun is only available if OLD_ED is not defined.
4 |
5 | string ed_cmd(string cmd);
6 |
7 | Performs the ed command 'cmd'. The result of the command is returned.
8 | Ed must have been started with ed_start() in order to call this efun.
9 |
10 | See also:
11 | ed_start
12 |
--------------------------------------------------------------------------------
/doc/html/efuns/interactive/find_player:
--------------------------------------------------------------------------------
1 | find_player - find a player by name
2 |
3 | object find_player( string str );
4 |
5 | This efun is only available when NO_ADD_ACTION is not defined.
6 |
7 | Similar to find_living(), but only searches through objects that are
8 | interactive, or were once interactive.
9 |
10 | See also:
11 | find_living,
12 | livings,
13 | users,
14 | set_living_name
15 |
--------------------------------------------------------------------------------
/doc/html/efuns/interactive/in_edit:
--------------------------------------------------------------------------------
1 | in_edit() - determine if a player is in the editor
2 |
3 | string in_edit();
4 |
5 | string in_edit(object ob);
6 |
7 | If the given object is in the editor, the file being edited is
8 | returned, else zero. If no object is given, this_object() is used.
9 |
10 | See also:
11 | ed,
12 | in_input
13 |
14 | Tim Hollebeek Beek@ZorkMUD, Lima Bean, IdeaExchange, and elsewhere
15 |
--------------------------------------------------------------------------------
/doc/html/efuns/interactive/in_input:
--------------------------------------------------------------------------------
1 | in_input() - determines if a player is inputting to an input_to
2 |
3 | int in_input();
4 |
5 | int in_input(object ob);
6 |
7 | Returns 1 if the object is currently inputting to an input_to or get_char.
8 | If no object is specified, this_object() is assumed.
9 |
10 | See also:
11 | get_char,
12 | input_to
13 |
14 | Tim Hollebeek Beek@ZorkMUD, Lima Bean, IdeaExchange, and elsewhere
15 |
16 |
--------------------------------------------------------------------------------
/doc/html/efuns/interactive/interactive:
--------------------------------------------------------------------------------
1 | interactive - detects whether or not a given object is an interactive
2 |
3 | int interactive( object ob );
4 |
5 | Return non-zero if 'ob' is an interactive player. 0 will be returned
6 | if he is link dead.
7 |
8 | See also:
9 | query_ip_number,
10 | query_ip_name,
11 | enable_commands
12 |
13 | Tim Hollebeek Beek@ZorkMUD, Lima Bean, IdeaExchange, and elsewhere
14 |
--------------------------------------------------------------------------------
/doc/html/efuns/interactive/query_host_name:
--------------------------------------------------------------------------------
1 | query_host_name - return the host name
2 |
3 | string query_host_name();
4 |
5 | query_host_name() returns the name of the host.
6 |
7 | See also:
8 | resolve,
9 | socket_address,
10 | query_ip_name,
11 | query_ip_number
12 |
13 | Tim Hollebeek Beek@ZorkMUD, Lima Bean, IdeaExchange, and elsewhere
14 |
--------------------------------------------------------------------------------
/doc/html/efuns/interactive/query_idle:
--------------------------------------------------------------------------------
1 | query_idle - determine how many seconds an interactive player has been idle
2 |
3 | int query_idle( object ob );
4 |
5 | Query how many seconds a player object (ob) has been idling.
6 |
7 | See also:
8 | in_edit,
9 | in_input
10 |
11 | Tim Hollebeek Beek@ZorkMUD, Lima Bean, IdeaExchange, and elsewhere
12 |
--------------------------------------------------------------------------------
/doc/html/efuns/interactive/query_ip_number:
--------------------------------------------------------------------------------
1 | query_ip_number - return the ip number for a player object
2 |
3 | string query_ip_number( object ob );
4 |
5 | Return the ip-number (dotted decimal form) for player `ob'.
6 |
7 | See also:
8 | query_ip_name,
9 | query_host_name,
10 | resolve,
11 | socket_address
12 |
13 | Tim Hollebeek Beek@ZorkMUD, Lima Bean, IdeaExchange, and elsewhere
14 |
--------------------------------------------------------------------------------
/doc/html/efuns/interactive/query_snoop:
--------------------------------------------------------------------------------
1 | query_snoop - return the snooper of an interactive object
2 |
3 | object query_snoop( object ob );
4 |
5 | If `ob' (an interactive object) is being snooped by another interactive object,
6 | the snooping object is returned. Otherwise, 0 is returned.
7 |
8 | See also:
9 | snoop,
10 | query_snooping
11 |
--------------------------------------------------------------------------------
/doc/html/efuns/interactive/query_snooping:
--------------------------------------------------------------------------------
1 | query_snooping - return the object than an object is snooping
2 |
3 | object query_snooping( object ob );
4 |
5 | If `ob' (an interactive object) is snooping another interactive object, the
6 | snooped object is returned. Otherwise, 0 is returned.
7 |
8 | See also:
9 | snoop,
10 | query_snoop
11 |
12 | Tim Hollebeek Beek@ZorkMUD, Lima Bean, IdeaExchange, and elsewhere
13 |
--------------------------------------------------------------------------------
/doc/html/efuns/interactive/shout:
--------------------------------------------------------------------------------
1 | shout - sends a message to all living objects
2 |
3 | void shout( string str );
4 |
5 | Sends the string `str' to all living objects except this_player().
6 |
7 | See also:
8 | message,
9 | write,
10 | tell_object,
11 | tell_room,
12 | say
13 |
14 | Tim Hollebeek Beek@ZorkMUD, Lima Bean, IdeaExchange, and elsewhere
15 |
16 |
--------------------------------------------------------------------------------
/doc/html/efuns/interactive/this_player:
--------------------------------------------------------------------------------
1 | this_player - return the object representing the current player
2 |
3 | object this_player( int flag );
4 |
5 | this_player() is exactly the same as this_user().
6 |
7 | See also:
8 | this_user
9 |
--------------------------------------------------------------------------------
/doc/html/efuns/interactive/userp:
--------------------------------------------------------------------------------
1 | userp - determine if a given object was once interactive
2 |
3 | int userp( object );
4 |
5 | Returns 1 if the arg was once interactive.
6 |
7 | See also:
8 | interactive,
9 | users,
10 | living
11 |
12 | Tim Hollebeek Beek@ZorkMUD, Lima Bean, IdeaExchange, and elsewhere
13 |
--------------------------------------------------------------------------------
/doc/html/efuns/interactive/users:
--------------------------------------------------------------------------------
1 | users - return an array of objects containing all interactive players
2 |
3 | object array users();
4 |
5 | Return an array of objects, containing all interactive players.
6 |
7 | See also:
8 | livings,
9 | children,
10 | objects
11 |
12 | Tim Hollebeek Beek@ZorkMUD, Lima Bean, IdeaExchange, and elsewhere
13 |
--------------------------------------------------------------------------------
/doc/html/efuns/interactive/wizardp:
--------------------------------------------------------------------------------
1 | wizardp - determines if a given object had enable_wizard() performed in it
2 |
3 | int wizardp( object );
4 |
5 | This efun is only available if NO_WIZARDS is not compiled in.
6 |
7 | Returns 1 if the arg had enable_wizard() performed on it.
8 |
9 | See also:
10 | disable_wizard,
11 | enable_wizard
12 |
13 | Tim Hollebeek Beek@ZorkMUD, Lima Bean, IdeaExchange, and elsewhere
14 |
--------------------------------------------------------------------------------
/doc/html/efuns/interactive/write:
--------------------------------------------------------------------------------
1 | write() - send a message to current player
2 |
3 | void write( mixed str );
4 |
5 | Write a message `str' to current player. `str' can also be a number, which
6 | will be translated to a string.
7 |
8 | See also:
9 | message,
10 | tell_object,
11 | tell_room,
12 | shout,
13 | say
14 |
15 | Tim Hollebeek Beek@ZorkMUD, Lima Bean, IdeaExchange, and elsewhere
16 |
--------------------------------------------------------------------------------
/doc/html/efuns/internals/get_config:
--------------------------------------------------------------------------------
1 | get_config - query various driver config settings
2 |
3 | mixed get_config( int );
4 |
5 | This efun is used to query the driver's various config
6 | settings. Please refer to the "runtime_config.h"
7 | include file for a list of currently recognized options.
8 |
9 | Tim Hollebeek Beek@ZorkMUD, Lima Bean, IdeaExchange, and elsewhere
10 |
--------------------------------------------------------------------------------
/doc/html/efuns/internals/query_load_average:
--------------------------------------------------------------------------------
1 | query_load_average - forces an error to occur in an object
2 |
3 | string query_load_average();
4 |
5 | This function returns a string which reports two things: 1) user commands
6 | per second, and 2) compiled lines per second.
7 |
8 | See also:
9 | rusage
10 |
11 | Tim Hollebeek Beek@ZorkMUD, Lima Bean, IdeaExchange, and elsewhere
12 |
--------------------------------------------------------------------------------
/doc/html/efuns/mappings/filter_mapping:
--------------------------------------------------------------------------------
1 | filter_mapping - return a selective sub-mapping
2 |
3 | mapping filter_mapping(mapping map, string fun, object ob, mixed extra, ...);
4 |
5 | mapping filter_array(mapping map, function f, mixed extra, ...);
6 |
7 | filter_mapping() is really the same as the filter() efun.
8 |
9 | See also:
10 | filter
11 |
12 | Tim Hollebeek Beek@ZorkMUD, Lima Bean, IdeaExchange, and elsewhere
13 |
--------------------------------------------------------------------------------
/doc/html/efuns/mappings/index:
--------------------------------------------------------------------------------
1 | Mapping Efuns
2 |
3 | The following efuns operate on mappings:
4 |
5 |
6 | * allocate_mapping
7 | * keys
8 | * map_delete
9 | * map_mapping
10 | * mapp
11 | * match_path
12 | * unique_mapping
13 | * values
14 |
15 |
16 | Tim Hollebeek Beek@ZorkMUD, Lima Bean, IdeaExchange, and elsewhere
17 |
--------------------------------------------------------------------------------
/doc/html/efuns/mappings/m_indices:
--------------------------------------------------------------------------------
1 | m_indices - return the keys of a mapping
2 |
3 | array m_indices(mapping);
4 |
5 | This efun is only available if COMPAT_32 is defined. It behaves exactly
6 | the same as keys().
7 |
8 | See also:
9 | keys
10 |
11 | Tim Hollebeek Beek@ZorkMUD, Lima Bean, IdeaExchange, and elsewhere
12 |
--------------------------------------------------------------------------------
/doc/html/efuns/mappings/m_values:
--------------------------------------------------------------------------------
1 | m_values - return the values of a mapping
2 |
3 | array m_values(mapping);
4 |
5 | This efun is only available if COMPAT_32 is defined. It behaves exactly
6 | the same as values().
7 |
8 | See also:
9 | values
10 |
11 | Tim Hollebeek Beek@ZorkMUD, Lima Bean, IdeaExchange, and elsewhere
12 |
--------------------------------------------------------------------------------
/doc/html/efuns/mixed/arrayp:
--------------------------------------------------------------------------------
1 | arrayp - determine whether or not a given variable is an array
2 |
3 | int arrayp( mixed arg );
4 |
5 | Return 1 if `arg' is an array, zero otherwise.
6 |
7 | See also:
8 | typeof
9 |
--------------------------------------------------------------------------------
/doc/html/efuns/mixed/bufferp:
--------------------------------------------------------------------------------
1 | bufferp - determine whether or not a given variable is a buffer
2 |
3 | int bufferp( mixed arg );
4 |
5 | Return 1 if `arg' is a buffer value and zero otherwise.
6 |
7 | Tim Hollebeek Beek@ZorkMUD, Lima Bean, IdeaExchange, and elsewhere
8 |
--------------------------------------------------------------------------------
/doc/html/efuns/mixed/classp:
--------------------------------------------------------------------------------
1 | classp - determine whether or not a given variable is a class
2 |
3 | int classp(mixed);
4 |
5 | Return 1 if the argument is a class.
6 |
7 | Tim Hollebeek Beek@ZorkMUD, Lima Bean, IdeaExchange, and elsewhere
8 |
--------------------------------------------------------------------------------
/doc/html/efuns/mixed/floatp:
--------------------------------------------------------------------------------
1 | floatp - determine whether or not a given variable is a float
2 |
3 | int floatp( mixed arg );
4 |
5 | Return 1 if `arg' is a float number and zero (0) otherwise.
6 |
7 | Tim Hollebeek Beek@ZorkMUD, Lima Bean, IdeaExchange, and elsewhere
8 |
--------------------------------------------------------------------------------
/doc/html/efuns/mixed/intp:
--------------------------------------------------------------------------------
1 | intp - determine whether or not a given variable is an integer
2 |
3 | int intp( mixed arg );
4 |
5 | Return 1 if 'arg' is an integer number and zero (0) otherwise.
6 |
7 | Tim Hollebeek Beek@ZorkMUD, Lima Bean, IdeaExchange, and elsewhere
8 |
--------------------------------------------------------------------------------
/doc/html/efuns/mixed/mapp:
--------------------------------------------------------------------------------
1 | mapp - determine whether or not a given variable is a mapping
2 |
3 | int mapp( mixed arg );
4 |
5 | Return 1 if `arg' is a mapping.
6 |
7 | Tim Hollebeek Beek@ZorkMUD, Lima Bean, IdeaExchange, and elsewhere
8 |
--------------------------------------------------------------------------------
/doc/html/efuns/mixed/objectp:
--------------------------------------------------------------------------------
1 | objectp - determine whether or not a given variable is an object
2 |
3 | int objectp( mixed arg );
4 |
5 | Return 1 if `arg' is an object.
6 |
7 | Tim Hollebeek Beek@ZorkMUD, Lima Bean, IdeaExchange, and elsewhere
8 |
--------------------------------------------------------------------------------
/doc/html/efuns/mixed/pointerp:
--------------------------------------------------------------------------------
1 | pointerp - determine whether or not a given variable is an array
2 |
3 | int pointerp( mixed arg );
4 |
5 | pointerp() is provided for compatibility; it is the same as the arrayp() efun.
6 |
7 | See also:
8 | arrayp
9 |
--------------------------------------------------------------------------------
/doc/html/efuns/mixed/stringp:
--------------------------------------------------------------------------------
1 | stringp - determine whether or not a given variable is a string
2 |
3 | int stringp( mixed arg );
4 |
5 | Returns 1 if 'arg' is a string, and zero if not.
6 |
7 | Tim Hollebeek Beek@ZorkMUD, Lima Bean, IdeaExchange, and elsewhere
8 |
--------------------------------------------------------------------------------
/doc/html/efuns/mudlib/living:
--------------------------------------------------------------------------------
1 | living - detects whether or not a given object is "living"
2 |
3 | int living( object ob );
4 |
5 | This efun is only available if NO_ADD_ACTION is not compiled in.
6 |
7 | Return true if `ob' is a living object (that is, if "enable_commands()" has
8 | been called by `ob').
9 |
10 | See also:
11 | enable_commands
12 |
13 | Tim Hollebeek Beek@ZorkMUD, Lima Bean, IdeaExchange, and elsewhere
14 |
15 |
--------------------------------------------------------------------------------
/doc/html/efuns/numbers/index:
--------------------------------------------------------------------------------
1 | Efuns relating to ints
2 |
3 | Pretty trivial stuff here
4 |
5 |
6 | * intp
7 | * nullp
8 | * random
9 | * to_float
10 |
11 |
12 | Tim Hollebeek Beek@ZorkMUD, Lima Bean, IdeaExchange, and elsewhere
13 |
--------------------------------------------------------------------------------
/doc/html/efuns/numbers/random:
--------------------------------------------------------------------------------
1 | random - return a pseudo-random number
2 |
3 | int random( int n );
4 |
5 | Return a pseudo-random number from the range [0 .. (n -1)] (inclusive).
6 |
7 | Tim Hollebeek Beek@ZorkMUD, Lima Bean, IdeaExchange, and elsewhere
8 |
--------------------------------------------------------------------------------
/doc/html/efuns/numbers/to_float:
--------------------------------------------------------------------------------
1 | to_float - convert an int to a float
2 |
3 | float to_float( int i );
4 |
5 | The to_float() call returns the number of type 'float' that is equivalent to
6 | the int 'i'.
7 |
8 | See also:
9 | to_int,
10 | read_buffer,
11 | sprintf,
12 | sscanf
13 |
14 | Tim Hollebeek Beek@ZorkMUD, Lima Bean, IdeaExchange, and elsewhere
15 |
16 |
--------------------------------------------------------------------------------
/doc/html/efuns/objects/heart_beat_info:
--------------------------------------------------------------------------------
1 | heart_beat_info - return an array of objects with active heartbeats
2 |
3 | object array heart_beat_info();
4 |
5 | Returns an array of all the objects with active heart_beats. This efun
6 | is only available if COMPAT_32 is defined.
7 |
8 | See also:
9 | heart_beats.html
10 |
11 | Tim Hollebeek Beek@ZorkMUD, Lima Bean, IdeaExchange, and elsewhere
12 |
--------------------------------------------------------------------------------
/doc/html/efuns/objects/heart_beats:
--------------------------------------------------------------------------------
1 | heart_beats - return an array of objects with active heartbeats
2 |
3 | object array heart_beats();
4 |
5 | Returns an array of all the objects with active heart_beats. This efun
6 | is only available if PACKAGE_CONTRIB is defined.
7 |
8 | See also:
9 | heart_beat,
10 | set_heart_beat,
11 | query_heart_beat
12 |
13 | Tim Hollebeek Beek@ZorkMUD, Lima Bean, IdeaExchange, and elsewhere
14 |
--------------------------------------------------------------------------------
/doc/html/efuns/objects/master:
--------------------------------------------------------------------------------
1 | master - returns the master object
2 |
3 | object master();
4 |
5 | Returns a pointer to the master object.
6 |
7 | See also:
8 | find_object
9 |
10 | Tim Hollebeek Beek@ZorkMUD, Lima Bean, IdeaExchange, and elsewhere
11 |
--------------------------------------------------------------------------------
/doc/html/efuns/objects/move_object:
--------------------------------------------------------------------------------
1 | move_object - move current object to another environment
2 |
3 | void move_object( mixed dest );
4 |
5 | Move the current object into the object `dest'. dest should either be
6 | a filename or an object.
7 |
8 | Tim Hollebeek Beek@ZorkMUD, Lima Bean, IdeaExchange, and elsewhere
9 |
--------------------------------------------------------------------------------
/doc/html/efuns/objects/new:
--------------------------------------------------------------------------------
1 | new
2 |
3 | object x = new( string name, ...);
4 | class foo x = new(class foo);
5 |
6 | If given a string, it behaves like clone object. If given a class type,
7 | it creates a new instance of the class type.
8 |
9 | See also:
10 | clone_object,
11 | destruct,
12 | move_object
13 |
14 | Tim Hollebeek Beek@ZorkMUD, Lima Bean, IdeaExchange, and elsewhere
15 |
--------------------------------------------------------------------------------
/doc/html/efuns/objects/virtualp:
--------------------------------------------------------------------------------
1 | virtualp - determine whether or not a given variable points to a virtual object
2 |
3 | int virtualp( object arg );
4 |
5 | Returns true (1) if the argument is objectp() and the O_VIRTUAL flag is set.
6 | The driver sets the O_VIRTUAL flag for those objects created via the
7 | 'compile_object' function in the master object.
8 |
9 | Tim Hollebeek Beek@ZorkMUD, Lima Bean, IdeaExchange, and elsewhere
10 |
--------------------------------------------------------------------------------
/doc/html/efuns/parsing/index:
--------------------------------------------------------------------------------
1 | Parsing efuns
2 |
3 | Various string parsing efuns:
4 |
5 |
6 | * query_verb
7 |
8 |
9 | Tim Hollebeek Beek@ZorkMUD, Lima Bean, IdeaExchange, and elsewhere
10 |
--------------------------------------------------------------------------------
/doc/html/efuns/strings/capitalize:
--------------------------------------------------------------------------------
1 | capitalize - capitalize a string
2 |
3 | string capitalize( string str );
4 |
5 | Convert the first character in 'str' to upper case, and return the
6 | new string.
7 |
8 | See also:
9 | lower_case
10 |
11 | Tim Hollebeek Beek@ZorkMUD, Lima Bean, IdeaExchange, and elsewhere
12 |
--------------------------------------------------------------------------------
/doc/html/efuns/strings/clear_bit:
--------------------------------------------------------------------------------
1 | clear_bit - zero a bit in a bit string
2 |
3 | string clear_bit( string str, int n );
4 |
5 | Return the new string where bit 'n' is cleared in string 'str'. Note that
6 | the old string 'str' is not modified. See set_bit() for information on
7 | the format of the string.
8 |
9 | See also:
10 | set_bit,
11 | test_bit
12 |
13 | Tim Hollebeek Beek@ZorkMUD, Lima Bean, IdeaExchange, and elsewhere
14 |
--------------------------------------------------------------------------------
/doc/html/efuns/strings/crypt:
--------------------------------------------------------------------------------
1 | crypt - encrypt a string
2 |
3 | string crypt( string str, string seed );
4 |
5 | Crypt the string 'str' using the first two characters from 'seed' as
6 | a seed. If 'seed' is 0, then random seed is used.
7 |
8 | The result has the first two characters as the seed.
9 |
10 | Tim Hollebeek Beek@ZorkMUD, Lima Bean, IdeaExchange, and elsewhere
11 |
--------------------------------------------------------------------------------
/doc/html/efuns/strings/lower_case:
--------------------------------------------------------------------------------
1 | lower_case - return the lowercase version of a given string
2 |
3 | string lower_case( string str );
4 |
5 | Return the lowercase version of a given string (original string remains
6 | unchanged).
7 |
8 | See also:
9 | capitalize
10 |
11 | Tim Hollebeek Beek@ZorkMUD, Lima Bean, IdeaExchange, and elsewhere
12 |
--------------------------------------------------------------------------------
/doc/html/efuns/strings/pluralize:
--------------------------------------------------------------------------------
1 | pluralize - returns the plural of a given string
2 |
3 | string pluralize( string str );
4 |
5 | Returns the plural of 'str'. Handles most of the oddities of the English
6 | language.
7 |
8 | This efun is only available if PACKAGE_CONTRIB is defined.
9 |
10 | Tim Hollebeek Beek@ZorkMUD, Lima Bean, IdeaExchange, and elsewhere
11 |
--------------------------------------------------------------------------------
/doc/html/efuns/strings/set_bit:
--------------------------------------------------------------------------------
1 | next_bit - find the next bit set in a bitstring
2 |
3 | int next_bit( string str, int n );
4 |
5 | next_bit() returns the next bit set in a bitstring after 'n', or -1 if
6 | 'n' is the last set bit.
7 |
8 | See also:
9 | set_bit,
10 | test_bit
11 |
12 | Tim Hollebeek Beek@ZorkMUD, Lima Bean, IdeaExchange, and elsewhere
13 |
--------------------------------------------------------------------------------
/doc/html/efuns/strings/strlen:
--------------------------------------------------------------------------------
1 | strlen - returns the length of a string
2 |
3 | int strlen( string str );
4 |
5 | strlen() returns the number of characters in the string 'str'.
6 |
7 | See also:
8 | sizeof
9 |
10 | Tim Hollebeek Beek@ZorkMUD, Lima Bean, IdeaExchange, and elsewhere
11 |
--------------------------------------------------------------------------------
/doc/html/efuns/strings/test_bit:
--------------------------------------------------------------------------------
1 | set_bit - set a bit in a bitstring
2 |
3 | int test_bit( string str, int n );
4 |
5 | Returns 1 if bit 'n' was set in string 'str', and zero otherwise.
6 |
7 | See also:
8 | set_bit,
9 | clear_bit
10 |
11 | Tim Hollebeek Beek@ZorkMUD, Lima Bean, IdeaExchange, and elsewhere
12 |
--------------------------------------------------------------------------------
/doc/html/efuns/system/ctime:
--------------------------------------------------------------------------------
1 | ctime - return a time string
2 |
3 | string ctime( int clock );
4 |
5 | Gives a nice string with current date and time, with the argument 'clock'
6 | that is the number of seconds since 1970.
7 |
8 | See also:
9 | time,
10 | localtime,
11 | uptime
12 |
13 | Tim Hollebeek Beek@ZorkMUD, Lima Bean, IdeaExchange, and elsewhere
14 |
--------------------------------------------------------------------------------
/doc/html/efuns/system/deep_inherit_list:
--------------------------------------------------------------------------------
1 | deep_inherit_list - get a list of ancestors of an object
2 |
3 | string array deep_inherit_list( object obj );
4 |
5 | Returns an array of filenames of all objects inherited (directly and
6 | indirectly) by obj.
7 |
8 | See also:
9 | inherit_list,
10 | inherits
11 |
12 | Tim Hollebeek Beek@ZorkMUD, Lima Bean, IdeaExchange, and elsewhere
13 |
--------------------------------------------------------------------------------
/doc/html/efuns/system/error:
--------------------------------------------------------------------------------
1 | error - generate a run-time error
2 |
3 | void error( string err );
4 |
5 | A run-time error 'err' will be generated when error() is called. Execution
6 | of the current thread will halt, and the trace will be recorded to the
7 | debug log.
8 |
9 | See also:
10 | catch,
11 | throw,
12 | error_handler
13 |
14 | Tim Hollebeek Beek@ZorkMUD, Lima Bean, IdeaExchange, and elsewhere
15 |
--------------------------------------------------------------------------------
/doc/html/efuns/system/eval_cost:
--------------------------------------------------------------------------------
1 | eval_cost - returns the evaluation cost remaining
2 |
3 | void eval_cost()
4 |
5 | eval_cost() returns the number of instructions that can be executed
6 | before the driver decides it is in an infinite loop.
7 |
8 | See also:
9 | set_eval_limit,
10 | reset_eval_cost
11 |
12 | Tim Hollebeek Beek@ZorkMUD, Lima Bean, IdeaExchange, and elsewhere
13 |
--------------------------------------------------------------------------------
/doc/html/efuns/system/inherits:
--------------------------------------------------------------------------------
1 | inherits - determine if an object inherits a given file
2 |
3 | int inherits( string file, object obj );
4 |
5 | inherits() returns 0 if obj does not inherit file, 1 if it inherits the
6 | most recent copy of file, and 2 if it inherits an old copy of file.
7 |
8 | See also:
9 | deep_inherit_list,
10 | inherit_list
11 |
12 | Tim Hollebeek Beek@ZorkMUD, Lima Bean, IdeaExchange, and elsewhere
13 |
14 |
--------------------------------------------------------------------------------
/doc/html/efuns/system/lpc_info:
--------------------------------------------------------------------------------
1 | lpc_info - return information about LPC->C compiled objects
2 |
3 | string lpc_info();
4 |
5 | lpc_info() returns a string describing which LPC->C programs are available,
6 | which are loaded, and which are out of date with respect to their source.
7 |
8 | Tim Hollebeek Beek@ZorkMUD, Lima Bean, IdeaExchange, and elsewhere
9 |
--------------------------------------------------------------------------------
/doc/html/efuns/system/max_eval_cost:
--------------------------------------------------------------------------------
1 | max_eval_cost - returns the maximum evaluation cost
2 |
3 | void max_eval_cost()
4 |
5 | max_eval_cost() returns the number of instructions that can be executed
6 | before the driver decides it is in an infinite loop.
7 |
8 | See also:
9 | set_eval_limit,
10 | reset_eval_cost
11 |
12 | Tim Hollebeek Beek@ZorkMUD, Lima Bean, IdeaExchange, and elsewhere
13 |
--------------------------------------------------------------------------------
/doc/html/efuns/system/program_info:
--------------------------------------------------------------------------------
1 | program_info - returns information about program memory usage
2 |
3 | string program_info();
4 |
5 | string program_info(object ob);
6 |
7 | Returns a summary of the memory usage of the program for a given object.
8 | If no program is specified, a summary of the memory usage of all loaded
9 | programs is returned.
10 |
11 | Tim Hollebeek Beek@ZorkMUD, Lima Bean, IdeaExchange, and elsewhere
12 |
--------------------------------------------------------------------------------
/doc/html/efuns/system/reset_eval_cost:
--------------------------------------------------------------------------------
1 | reset_eval_cost - resets the evaluation cost remaining
2 |
3 | void reset_eval_cost();
4 |
5 | reset_eval_cost() resets the evaluation cost remaining to the maximum
6 | evaluation cost.
7 |
8 | See also:
9 | eval_cost,
10 | set_eval_limit
11 |
12 | Tim Hollebeek Beek@ZorkMUD, Lima Bean, IdeaExchange, and elsewhere
13 |
--------------------------------------------------------------------------------
/doc/html/efuns/system/time:
--------------------------------------------------------------------------------
1 | debug_message - send a message to the driver's stdout
2 |
3 | void debug_message(string);
4 |
5 | The string argument is printed on the driver's stdout, as well as being added
6 | to the debug.log file.
7 |
8 | See also:
9 | ctime
10 |
11 | Tim Hollebeek Beek@ZorkMUD, Lima Bean, IdeaExchange, and elsewhere
12 |
--------------------------------------------------------------------------------
/doc/html/efuns/system/uptime:
--------------------------------------------------------------------------------
1 | uptime - return the number of seconds elapsed since the last driver reboot
2 |
3 | int uptime();
4 |
5 | This function returns the number of seconds since the last driver reboot.
6 |
7 | See also:
8 | time,
9 | ctime,
10 | localtime,
11 | time_expression
12 |
13 | Tim Hollebeek Beek@ZorkMUD, Lima Bean, IdeaExchange, and elsewhere
14 |
--------------------------------------------------------------------------------
/doc/html/index:
--------------------------------------------------------------------------------
1 | MudOS Documentation
2 |
3 |
4 | * Applies
5 | * Concepts
6 | * Driver
7 | * Efuns
8 | * LPC
9 |
10 |
11 | Tim Hollebeek Beek@ZorkMUD, Lima Bean, IdeaExchange, and elsewhere
12 |
--------------------------------------------------------------------------------
/doc/html/lpc/constructs/prototypes:
--------------------------------------------------------------------------------
1 | * The function prototype:
2 |
3 | The LPC function prototype is very similar to that of ANSI C. The
4 | function prototype allows for better type checking and can serve as
5 | a kind of 'forward' declaration.
6 |
7 | return_type function_name(arg1_type arg1, arg2_type arg2, ...);
8 |
--------------------------------------------------------------------------------
/doc/nroff/FTP:
--------------------------------------------------------------------------------
1 | 1993/09/09
2 |
3 | The latest releases of MudOS are made available via anonymous ftp from
4 | actlab.rtf.utexas.edu:/MUD/LPmud/MudOS/driver. Beta releases are available
5 | in the /MUD/LPmud/MudOS/driver/beta directory.
6 |
7 | ftp.ccs.neu.edu:/pub/mud also carries the latest releases, as well as
8 | several mudlibs (such as TMI-2 and Nightmare).
9 |
--------------------------------------------------------------------------------
/doc/nroff/applies/__INIT.4:
--------------------------------------------------------------------------------
1 | .\"obsolete apply
2 | .TH __INIT 4 "5 Sep 1994" MudOS "Driver Applies"
3 |
4 | .SH NAME
5 | __INIT - obsolete apply
6 |
7 | .SH SYNOPSIS
8 | __INIT( void );
9 |
10 | .SH DESCRIPTION
11 | This function used to be called in objects right before create.
12 | global variable initialization is now handled by another function that
13 | cannot be interfered with, so this is no longer called.
14 |
--------------------------------------------------------------------------------
/doc/nroff/applies/interactive/logon.4:
--------------------------------------------------------------------------------
1 | .\"initialize a login connection
2 | .TH logon 4 "5 Sep 1994" MudOS "Driver Applies"
3 |
4 | .SH NAME
5 | logon - initialize a login connection
6 |
7 | .SH SYNOPSIS
8 | object logon( void );
9 |
10 | .SH DESCRIPTION
11 | This apply is called on the object returned by the connect() master
12 | apply. It should set up the new user.
13 |
14 | .SH SEE ALSO
15 | connect(4)
16 |
--------------------------------------------------------------------------------
/doc/nroff/applies/master/flag.4:
--------------------------------------------------------------------------------
1 | .\"handle mudlib specific flags specified at driver startup
2 | .TH flag 4 "5 Sep 1994" MudOS "Driver Applies"
3 |
4 | .SH NAME
5 | flag - handle mudlib specific flags specified at driver startup
6 |
7 | .SH SYNOPSIS
8 | void flag( string );
9 |
10 | .SH DESCRIPTION
11 | This master apply is called for each command line
12 | option passed to the driver with the -f flag.
13 |
--------------------------------------------------------------------------------
/doc/nroff/concepts/global_include_file:
--------------------------------------------------------------------------------
1 | One of the possible options in the config file is a 'Global include file'
2 | If defined, that file with be included at the top of all files just as
3 | if it had been included with a #include statement.
4 |
5 | This is useful for having certain defines available in all objects.
6 |
--------------------------------------------------------------------------------
/doc/nroff/convert.sh:
--------------------------------------------------------------------------------
1 | #!/bin/sh
2 |
3 | name=$1
4 | dir=`echo $name | sed -e "s/\/[^\/]*$/\//"`
5 | base1=`basename $name .3`
6 | base2=`basename $base1 .4`
7 | newname=`echo $dir$base2`
8 | echo $newname
9 | nroff -man $name | uniq > $newname
10 | rm $name
11 |
--------------------------------------------------------------------------------
/doc/nroff/defines/BSDMALLOC:
--------------------------------------------------------------------------------
1 | BSD malloc is a very fast memory allocator; the down side is that it uses
2 | alot of extra memory to keep track of blocks. If speed is more important
3 | that memory usage, tho, this might be best. It also keeps track of
4 | memory usage statistics.
5 |
6 | BSD malloc requires the sbrk() system call work on your system.
7 |
--------------------------------------------------------------------------------
/doc/nroff/defines/CHECK_MEMORY:
--------------------------------------------------------------------------------
1 | CHECK_MEMORY adds a special series of bytes before and after any allocated
2 | block of memory, and checks them periodically to see if any routine is
3 | writing outside of block boundaries. It also adds the check_memory() efun
4 | which checks every allocated block to see if it really should be allocated.
--------------------------------------------------------------------------------
/doc/nroff/defines/DEBUGMALLOC:
--------------------------------------------------------------------------------
1 | DEBUGMALLOC provides exact information about how much memory has been
2 | allocated by what. It is considerably slower and takes up quite a bit
3 | more memory as a result.
--------------------------------------------------------------------------------
/doc/nroff/defines/DEBUGMALLOC_EXTENSIONS:
--------------------------------------------------------------------------------
1 | DEBUGMALLOC_EXTENSIONS not only keeps track of how much is allocated, but
2 | also associates a numeric tag and a string label with each block, allowing
3 | it to check memory for consistency and determine where any given block
4 | was allocated from.
5 |
6 | Useful for tracking and removing memory leaks from the driver.
--------------------------------------------------------------------------------
/doc/nroff/defines/DO_MSTATS:
--------------------------------------------------------------------------------
1 | DO_MSTATS adds the malloc_status() efun which will print out the total
2 | ammount of memory allocated and other statistics. Does not work with
3 | SYSMALLOC.
--------------------------------------------------------------------------------
/doc/nroff/defines/HAS_STATUS_TYPE:
--------------------------------------------------------------------------------
1 | defining HAS_STATUS_TYPE adds a type 'status' which is exactly the same as
2 | 'int'. This is provided to allow older code which uses the 'status' type
3 | to compile. Another option is to just put the line:
4 |
5 | #define status int
6 |
7 | in the global include file.
--------------------------------------------------------------------------------
/doc/nroff/defines/README-DEFINES:
--------------------------------------------------------------------------------
1 | Every identifier defined in options.h becomes an LPC define as well, after
2 | having __ added to the front and back. For example, if SYSMALLOC is defined
3 | in options.h, then __SYSMALLOC__ will be defined in all LPC objects.
--------------------------------------------------------------------------------
/doc/nroff/defines/SMALLOC:
--------------------------------------------------------------------------------
1 | SMALLOC is a memory allocator written specifically for LPmuds. It is faster
2 | than most system mallocs because it was designed to work with LP drivers,
3 | and also provides statistics on how much memory is being used.
4 |
--------------------------------------------------------------------------------
/doc/nroff/defines/WRAPPEDMALLOC:
--------------------------------------------------------------------------------
1 | WRAPPEDMALLOC adds some extra code to whatever memory allocator you have
2 | chosen to keep some memory allocation statistics.
3 |
--------------------------------------------------------------------------------
/doc/nroff/defines/lpc/HAS_CACHE_STATS:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/quixadhal/fluffos/a845107aab294f1d6533813c7f996ace6404f908/doc/nroff/defines/lpc/HAS_CACHE_STATS
--------------------------------------------------------------------------------
/doc/nroff/defines/lpc/HAS_DEBUGMALLOC:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/quixadhal/fluffos/a845107aab294f1d6533813c7f996ace6404f908/doc/nroff/defines/lpc/HAS_DEBUGMALLOC
--------------------------------------------------------------------------------
/doc/nroff/defines/lpc/HAS_DEBUG_LEVEL:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/quixadhal/fluffos/a845107aab294f1d6533813c7f996ace6404f908/doc/nroff/defines/lpc/HAS_DEBUG_LEVEL
--------------------------------------------------------------------------------
/doc/nroff/defines/lpc/HAS_EACH:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/quixadhal/fluffos/a845107aab294f1d6533813c7f996ace6404f908/doc/nroff/defines/lpc/HAS_EACH
--------------------------------------------------------------------------------
/doc/nroff/defines/lpc/HAS_ED:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/quixadhal/fluffos/a845107aab294f1d6533813c7f996ace6404f908/doc/nroff/defines/lpc/HAS_ED
--------------------------------------------------------------------------------
/doc/nroff/defines/lpc/HAS_LIGHT:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/quixadhal/fluffos/a845107aab294f1d6533813c7f996ace6404f908/doc/nroff/defines/lpc/HAS_LIGHT
--------------------------------------------------------------------------------
/doc/nroff/defines/lpc/HAS_MATH:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/quixadhal/fluffos/a845107aab294f1d6533813c7f996ace6404f908/doc/nroff/defines/lpc/HAS_MATH
--------------------------------------------------------------------------------
/doc/nroff/defines/lpc/HAS_MATRIX:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/quixadhal/fluffos/a845107aab294f1d6533813c7f996ace6404f908/doc/nroff/defines/lpc/HAS_MATRIX
--------------------------------------------------------------------------------
/doc/nroff/defines/lpc/HAS_MUDLIB_ERROR_HANDLER:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/quixadhal/fluffos/a845107aab294f1d6533813c7f996ace6404f908/doc/nroff/defines/lpc/HAS_MUDLIB_ERROR_HANDLER
--------------------------------------------------------------------------------
/doc/nroff/defines/lpc/HAS_MUDLIB_STATS:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/quixadhal/fluffos/a845107aab294f1d6533813c7f996ace6404f908/doc/nroff/defines/lpc/HAS_MUDLIB_STATS
--------------------------------------------------------------------------------
/doc/nroff/defines/lpc/HAS_OPCPROF:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/quixadhal/fluffos/a845107aab294f1d6533813c7f996ace6404f908/doc/nroff/defines/lpc/HAS_OPCPROF
--------------------------------------------------------------------------------
/doc/nroff/defines/lpc/HAS_PRINTF:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/quixadhal/fluffos/a845107aab294f1d6533813c7f996ace6404f908/doc/nroff/defines/lpc/HAS_PRINTF
--------------------------------------------------------------------------------
/doc/nroff/defines/lpc/HAS_PRIVS:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/quixadhal/fluffos/a845107aab294f1d6533813c7f996ace6404f908/doc/nroff/defines/lpc/HAS_PRIVS
--------------------------------------------------------------------------------
/doc/nroff/defines/lpc/HAS_RUSAGE:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/quixadhal/fluffos/a845107aab294f1d6533813c7f996ace6404f908/doc/nroff/defines/lpc/HAS_RUSAGE
--------------------------------------------------------------------------------
/doc/nroff/defines/lpc/HAS_SHADOWS:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/quixadhal/fluffos/a845107aab294f1d6533813c7f996ace6404f908/doc/nroff/defines/lpc/HAS_SHADOWS
--------------------------------------------------------------------------------
/doc/nroff/defines/lpc/HAS_SOCKETS:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/quixadhal/fluffos/a845107aab294f1d6533813c7f996ace6404f908/doc/nroff/defines/lpc/HAS_SOCKETS
--------------------------------------------------------------------------------
/doc/nroff/defines/lpc/LPC3:
--------------------------------------------------------------------------------
1 | Always defined.
2 |
--------------------------------------------------------------------------------
/doc/nroff/defines/lpc/MUDOS:
--------------------------------------------------------------------------------
1 | Always defined.
2 |
--------------------------------------------------------------------------------
/doc/nroff/defines/lpc/MUD_NAME:
--------------------------------------------------------------------------------
1 | Defined to the name of the mud as defined in the runtime configuration file.
2 |
--------------------------------------------------------------------------------
/doc/nroff/defines/lpc/README:
--------------------------------------------------------------------------------
1 | Note: Every define in options.h is now passed to the mudlib surrounded by
2 | "__", so if #define XYZZY appears in options.h, then the mudlib will see
3 | __XYZZY__ defined.
4 |
--------------------------------------------------------------------------------
/doc/nroff/defines/lpc/SAVE_EXTENSION:
--------------------------------------------------------------------------------
1 | Defined to whatever the savefile extension (as used by save_object() and
2 | restore_object()) is configured as (at driver compile time).
3 |
--------------------------------------------------------------------------------
/doc/nroff/defines/lpc/USE_EUID:
--------------------------------------------------------------------------------
1 | Always defined.
2 |
--------------------------------------------------------------------------------
/doc/nroff/defines/lpc/__ARCH__:
--------------------------------------------------------------------------------
1 | Defined to a string naming the type of machine/OS that the driver is
2 | currently running on.
3 |
--------------------------------------------------------------------------------
/doc/nroff/defines/lpc/__DIR__:
--------------------------------------------------------------------------------
1 | Directory that the file currently being compiled is in.
2 |
--------------------------------------------------------------------------------
/doc/nroff/defines/lpc/__FILE__:
--------------------------------------------------------------------------------
1 | The name of the current file.
2 |
3 |
--------------------------------------------------------------------------------
/doc/nroff/defines/lpc/__PORT__:
--------------------------------------------------------------------------------
1 | The port number that the mud is receiving connections on. (in numeric form)
2 |
--------------------------------------------------------------------------------
/doc/nroff/defines/lpc/__VERSION__:
--------------------------------------------------------------------------------
1 | Defined to a string representing the version number of MudOS that is running.
2 |
--------------------------------------------------------------------------------
/doc/nroff/efuns/buffers/crc32.3:
--------------------------------------------------------------------------------
1 | .\"compute the cyclic redundacy code for a buffer or string
2 | .TH crc32 3 "5 Sep 1994" MudOS "LPC Library Functions"
3 |
4 | .SH NAME
5 | crc32() - compute the cycle redundancy code for a buffer or string
6 |
7 | .SH SYNOPSIS
8 | int crc32( buffer | string x );
9 |
10 | .SH DESCRIPTION
11 | Computes and returns the CRC-32 code for the given buffer or string, `x'.
12 |
--------------------------------------------------------------------------------
/doc/nroff/efuns/filesystem/mkdir.3:
--------------------------------------------------------------------------------
1 | .\"create a directory
2 | .TH mkdir 3 "5 Sep 1994" MudOS "LPC Library Functions"
3 |
4 | .SH NAME
5 | mkdir() - make a directory
6 |
7 | .SH SYNOPSIS
8 | int mkdir( string directory );
9 |
10 | .SH DESCRIPTION
11 | Creates the specified directory. Returns 1 if successful, 0 if not.
12 |
13 | .SH SEE ALSO
14 | rm(3), rmdir(3), link(3)
15 |
--------------------------------------------------------------------------------
/doc/nroff/efuns/filesystem/rm.3:
--------------------------------------------------------------------------------
1 | .\"remove a file
2 | .TH rm 3 "5 Sep 1994" MudOS "LPC Library Functions"
3 |
4 | .SH NAME
5 | rm() - remove a file
6 |
7 | .SH SYNOPSIS
8 | int rm( string file );
9 |
10 | .SH DESCRIPTION
11 | Remove file `file'. Returns 0 for failure and 1 for success.
12 |
13 | .SH SEE ALSO
14 | mkdir(3), rmdir(3), link(3)
15 |
--------------------------------------------------------------------------------
/doc/nroff/efuns/filesystem/rmdir.3:
--------------------------------------------------------------------------------
1 | .\"remove a directory
2 | .TH rmdir 3 "5 Sep 1994" MudOS "LPC Library Functions"
3 |
4 | .SH NAME
5 | rmdir() - remove a directory
6 |
7 | .SH SYNOPSIS
8 | int rmdir( string dir );
9 |
10 | .SH DESCRIPTION
11 | Remove directory `dir'.
12 |
13 | .SH RETURN VALUE
14 | Returns nonzero for success, zero (0) for failure.
15 |
16 | .SH SEE ALSO
17 | rm(3), mkdir(3), link(3)
18 |
--------------------------------------------------------------------------------
/doc/nroff/efuns/floats/acos.3:
--------------------------------------------------------------------------------
1 | .\"return the arccosine of a float
2 | .TH acos 3 "5 Sep 1994" MudOS "LPC Library Functions"
3 |
4 | .SH NAME
5 | acos() - return the arccosine of a float
6 |
7 | .SH SYNOPSIS
8 | float acos( float f );
9 |
10 | .SH DESCRIPTION
11 | Returns the arccosine of its argument, `f', measured in radians.
12 |
13 | .SH SEE ALSO
14 | asin(3), atan(3), cos(3), sin(3), tan(3)
15 |
--------------------------------------------------------------------------------
/doc/nroff/efuns/floats/asin.3:
--------------------------------------------------------------------------------
1 | .\"return the arcsine of a float
2 | .TH asin 3 "5 Sep 1994" MudOS "LPC Library Functions"
3 |
4 | .SH NAME
5 | asin() - return the arcsine of a float
6 |
7 | .SH SYNOPSIS
8 | float asin( float f );
9 |
10 | .SH DESCRIPTION
11 | Returns the arcsine of its argument, `f', measured in radians.
12 |
13 | .SH SEE ALSO
14 | acos(3), atan(3), cos(3), sin(3), tan(3)
15 |
--------------------------------------------------------------------------------
/doc/nroff/efuns/floats/atan.3:
--------------------------------------------------------------------------------
1 | .\"return the arctangent of a float
2 | .TH atan 3 "5 Sep 1994" MudOS "LPC Library Functions"
3 |
4 | .SH NAME
5 | atan() - return the tangent of a float
6 |
7 | .SH SYNOPSIS
8 | float atan( float f );
9 |
10 | .SH DESCRIPTION
11 | Returns the arctangent of its argument, `f', measured in radians.
12 |
13 | .SH SEE ALSO
14 | acos(3), asin(3), cos(3), sin(3), tan(3)
15 |
--------------------------------------------------------------------------------
/doc/nroff/efuns/floats/ceil.3:
--------------------------------------------------------------------------------
1 | .\"round a float up to the nearest integer
2 | .TH ceil 3 "5 Sep 1994" MudOS "LPC Library Functions"
3 |
4 | .SH NAME
5 | ceil() - round a float up to the nearest integer
6 |
7 | .SH SYNOPSIS
8 | float ceil( float f );
9 |
10 | .SH DESCRIPTION
11 | Returns (as a float) the nearest integer number equal to or greater than f.
12 |
13 | .SH SEE ALSO
14 | floor(3), to_int(3), to_float(3)
15 |
--------------------------------------------------------------------------------
/doc/nroff/efuns/floats/cos.3:
--------------------------------------------------------------------------------
1 | .\"return the cosine of a float
2 | .TH cos 3 "5 Sep 1994" MudOS "LPC Library Functions"
3 |
4 | .SH NAME
5 | cos() - return the cosine of a float
6 |
7 | .SH SYNOPSIS
8 | float cos( float f );
9 |
10 | .SH DESCRIPTION
11 | Returns the cosine of its argument, `f', measured in radians.
12 |
13 | .SH SEE ALSO
14 | acos(3), asin(3), atan(3), sin(3), tan(3)
15 |
--------------------------------------------------------------------------------
/doc/nroff/efuns/floats/exp.3:
--------------------------------------------------------------------------------
1 | .\"find e to the power of a float
2 | .TH exp 3 "5 Sep 1994" MudOS "LPC Library Functions"
3 |
4 | .SH NAME
5 | exp() - find e to the power of a float
6 |
7 | .SH SYNOPSIS
8 | float exp( float f );
9 |
10 | .SH DESCRIPTION
11 | exp() returns e^f.
12 |
13 | .SH SEE ALSO
14 | log(3), pow(3), sqrt(3)
15 |
--------------------------------------------------------------------------------
/doc/nroff/efuns/floats/floor.3:
--------------------------------------------------------------------------------
1 | .\"round a float down to the nearest integer
2 | .TH floor 3 "5 Sep 1994" MudOS "LPC Library Functions"
3 |
4 | .SH NAME
5 | floor() - round a float down to the nearest integer
6 |
7 | .SH SYNOPSIS
8 | float floor( float f );
9 |
10 | .SH DESCRIPTION
11 | Returns (as a float) the nearest integer number equal to or smaller than f.
12 |
13 | .SH SEE ALSO
14 | ceil(3), to_int(3), to_float(3)
15 |
--------------------------------------------------------------------------------
/doc/nroff/efuns/floats/log.3:
--------------------------------------------------------------------------------
1 | .\"returns the natural logarithm of a float
2 | .TH log 3 "5 Sep 1994" MudOS "LPC Library Functions"
3 |
4 | .SH NAME
5 | log() - returns the natural logarithm of a float
6 |
7 | .SH SYNOPSIS
8 | float log( float f );
9 |
10 | .SH DESCRIPTION
11 | Returns the natural logarithm of its argument, `f'. `f' must be positive.
12 |
13 | .SH SEE ALSO
14 | exp(3), pow(3), sqrt(3)
15 |
--------------------------------------------------------------------------------
/doc/nroff/efuns/floats/pow.3:
--------------------------------------------------------------------------------
1 | .\"find an exponent of a float
2 | .TH pow 3 "5 Sep 1994" MudOS "LPC Library Functions"
3 |
4 | .SH NAME
5 | pow() - find an exponent of a float
6 |
7 | .SH SYNOPSIS
8 | float pow( float x, float y );
9 |
10 | .SH DESCRIPTION
11 | pow() returns x to the y power. If x is 0.0, y must be positive. If x is
12 | negative, y must be an integer.
13 |
14 | .SH SEE ALSO
15 | exp(3), log(3), sqrt(3)
16 |
--------------------------------------------------------------------------------
/doc/nroff/efuns/floats/sin.3:
--------------------------------------------------------------------------------
1 | .\"return the sine of a float
2 | .TH sin 3 "5 Sep 1994" MudOS "LPC Library Functions"
3 |
4 | .SH NAME
5 | sin() - return the sine of a float
6 |
7 | .SH SYNOPSIS
8 | float sin( float f );
9 |
10 | .SH DESCRIPTION
11 | Returns the sine of its argument, `f', measured in radians.
12 |
13 | .SH SEE ALSO
14 | acos(3), asin(3), atan(3), cos(3), tan(3)
15 |
--------------------------------------------------------------------------------
/doc/nroff/efuns/floats/sqrt.3:
--------------------------------------------------------------------------------
1 | .\"returns the square root of a float
2 | .TH sqrt 3 "5 Sep 1994" MudOS "LPC Library Functions"
3 |
4 | .SH NAME
5 | sqrt() - returns the square root of a float
6 |
7 | .SH SYNOPSIS
8 | float sqrt( float f );
9 |
10 | .SH DESCRIPTION
11 | sqrt() returns the non-negative square root of its argument, `f'. The value
12 | of `f' must not be negative.
13 |
14 | .SH SEE ALSO
15 | exp(3), log(3), pow(3)
16 |
--------------------------------------------------------------------------------
/doc/nroff/efuns/floats/tan.3:
--------------------------------------------------------------------------------
1 | .\"return the tangent of a float
2 | .TH tan 3 "5 Sep 1994" MudOS "LPC Library Functions"
3 |
4 | .SH NAME
5 | tan() - return the tangent of a float
6 |
7 | .SH SYNOPSIS
8 | float tan( float f );
9 |
10 | .SH DESCRIPTION
11 | Returns the tangent of its argument, `f', measured in radians.
12 |
13 | .SH SEE ALSO
14 | acos(3), asin(3), atan(3), cos(3), sin(3)
15 |
--------------------------------------------------------------------------------
/doc/nroff/efuns/functions/evaluate.3:
--------------------------------------------------------------------------------
1 | .\"evaluate a function pointer
2 | .TH evaluate 3 "5 Sep 1994" MudOS "LPC Library Functions"
3 |
4 | .SH NAME
5 | evaluate() - evaluate a function pointer
6 |
7 | .SH SYNOPSIS
8 | .nf
9 | mixed evaluate(mixed f, ...)
10 |
11 | .SH DESCRIPTION
12 | If f is a function, f is called with the rest of the arguments.
13 | Otherwise, f is returned. evaluate(f, ...) is the same as (*f)(...).
--------------------------------------------------------------------------------
/doc/nroff/efuns/interactive/userp.3:
--------------------------------------------------------------------------------
1 | .\"determine if a given object was once interactive
2 | .TH userp 3 "5 Sep 1994" MudOS "LPC Library Functions"
3 |
4 | .SH NAME
5 | userp() - determine if a given object was once interactive
6 |
7 | .SH SYNOPSIS
8 | int userp( object );
9 |
10 | .SH DESCRIPTION
11 | Returns 1 if the arg was once interactive.
12 |
13 | .SH SEE ALSO
14 | interactive(3), users(3), living(3)
15 |
--------------------------------------------------------------------------------
/doc/nroff/efuns/numbers/random.3:
--------------------------------------------------------------------------------
1 | .\"return a pseudo-random number
2 | .TH random 3 "5 Sep 1994" MudOS "LPC Library Functions"
3 |
4 | .SH NAME
5 | random() - return a pseudo-random number
6 |
7 | .SH SYNOPSIS
8 | int random( int n );
9 |
10 | .SH DESCRIPTION
11 | Return a pseudo-random number from the range [0 .. (n -1)] (inclusive).
12 |
--------------------------------------------------------------------------------
/doc/nroff/efuns/objects/master.3:
--------------------------------------------------------------------------------
1 | .\"returns the master object
2 | .TH master 3 "5 Sep 1994" MudOS "LPC Library Functions"
3 |
4 | .SH NAME
5 | master() - returns the master object
6 |
7 | .SH SYNOPSIS
8 | object master( void );
9 |
10 | .SH DESCRIPTION
11 | Returns a pointer to the master object.
12 |
13 | .SH SEE ALSO
14 | find_object(3)
15 |
--------------------------------------------------------------------------------
/doc/nroff/efuns/strings/capitalize.3:
--------------------------------------------------------------------------------
1 | .\"capitalize a string
2 | .TH capitalize 3 "5 Sep 1994" MudOS "LPC Library Functions"
3 |
4 | .SH NAME
5 | capitalize() - capitalize a string
6 |
7 | .SH SYNOPSIS
8 | string capitalize( string str );
9 |
10 | .SH DESCRIPTION
11 | Convert the first character in to upper case, and return the
12 | new string.
13 |
14 | .SH SEE ALSO
15 | lower_case(3)
16 |
--------------------------------------------------------------------------------
/doc/nroff/efuns/strings/strlen.3:
--------------------------------------------------------------------------------
1 | .\"returns the length of a string
2 | .TH strlen 3 "5 Sep 1994" MudOS "LPC Library Functions"
3 |
4 | .SH NAME
5 | strlen() - returns the length of a string
6 |
7 | .SH SYNOPSIS
8 | int strlen( string str );
9 |
10 | .SH DESCRIPTION
11 | strlen() returns the number of characters in the string `str'.
12 |
13 | .SH SEE ALSO
14 | sizeof(3)
15 |
--------------------------------------------------------------------------------
/doc/nroff/efuns/strings/test_bit.3:
--------------------------------------------------------------------------------
1 | .\"test a bit in a bitstring
2 | .TH test_bit 3 "5 Sep 1994" MudOS "LPC Library Functions"
3 |
4 | .SH NAME
5 | set_bit() - set a bit in a bitstring
6 |
7 | .SH SYNOPSIS
8 | int test_bit( string str, int n );
9 |
10 | .SH DESCRIPTION
11 | Return 0 or 1 of bit `n' was set in string `str'.
12 |
13 | .SH SEE ALSO
14 | set_bit(3), clear_bit(3)
15 |
--------------------------------------------------------------------------------
/doc/nroff/efuns/system/time.3:
--------------------------------------------------------------------------------
1 | .\"return the current system time
2 | .TH time 3 "5 Sep 1994" MudOS "LPC Library Functions"
3 |
4 | .SH NAME
5 | time() - return the number of seconds since January 1, 1970
6 |
7 | .SH SYNOPSIS
8 | int time( void );
9 |
10 | .SH DESCRIPTION
11 | Return the number of seconds since midnight (GMT) January 1, 1970.
12 |
13 | .SH SEE ALSO
14 | ctime(3), localtime(3), time_expression(3), uptime(3)
15 |
--------------------------------------------------------------------------------
/doc/nroff/lpc/constructs/prototypes:
--------------------------------------------------------------------------------
1 | * The function prototype:
2 |
3 | The LPC function prototype is very similar to that of ANSI C. The
4 | function prototype allows for better type checking and can serve as
5 | a kind of 'forward' declaration.
6 |
7 | return_type function_name(arg1_type arg1, arg2_type arg2, ...);
8 |
9 | Also note that the arguments need not have names:
10 |
11 | return_type function_name(arg1_type, arg2_type, ...);
--------------------------------------------------------------------------------
/doc/nroff/lpc/preprocessor/README:
--------------------------------------------------------------------------------
1 | A preprocessor directive is any line of an LPC program which begins with '#'.
2 |
3 | These aren't really actually statements; they just instruct the compiler to
4 | do certain things while compiling the code. For example, the #if statement
5 | can be used to compile certain sections of the code only if certain conditions
6 | are true.
7 |
--------------------------------------------------------------------------------
/doc/nroff/lpc/preprocessor/define:
--------------------------------------------------------------------------------
1 | the #define preprocessor command creates a macro that can be expanded later
2 | on in the file. For example, if you have the line:
3 |
4 | #define apples oranges
5 |
6 | Then every time the word 'apples' appears after that point, it will be
7 | treated as if it were 'oranges'.
8 |
--------------------------------------------------------------------------------
/doc/nroff/man2ascii.sh:
--------------------------------------------------------------------------------
1 | #!/bin/sh
2 |
3 | echo Converting man pages...
4 | find . -name "*.[34]" -exec convert.sh {} \;
5 | echo Done.
6 |
--------------------------------------------------------------------------------
/doc/nroff/platforms/Alpha-OSF1:
--------------------------------------------------------------------------------
1 | MudOS hints for the DEC Alpha running OSF/1:
2 |
3 | Don't try to use smalloc, and probably not bsdmalloc either.
4 |
5 | Don't define any BINARIES stuff in options.h--it doesn't support 64
6 | bit machines (yet).
7 |
8 | I wasn't able to compile the driver with gcc on Alpha; only cc. And when
9 | using optimization, there were crashes.
10 |
--------------------------------------------------------------------------------
/doc/nroff/platforms/Irix:
--------------------------------------------------------------------------------
1 | SGI IRIX
2 |
3 | As of gcc 2.2.1, gcc does not produce correct code and the driver does not
4 | function. Use cc.
5 |
--------------------------------------------------------------------------------
/doc/nroff/platforms/Linux:
--------------------------------------------------------------------------------
1 | Some people have reported problems with using MudOS to run the TMI-2-1.0.1
2 | mudlib under Linux. It seems that the problem may be related to the socket
3 | efuns. Try emptying the file named /adm/etc/socket_preload and rebooting
4 | the MUD.
5 |
--------------------------------------------------------------------------------
/doc/nroff/platforms/NeXT:
--------------------------------------------------------------------------------
1 | MudOS hints for the NeXT:
2 |
3 | Don't use bsdmalloc or smalloc.
4 |
5 | In the Makefile, comment out RESOLV.
6 |
--------------------------------------------------------------------------------
/doc/nroff/platforms/RS6000:
--------------------------------------------------------------------------------
1 | MudOS hints for the RS/6000:
2 |
3 | Don't use bsdmalloc or smalloc.
4 |
5 | Some earlier versions of AIX (e.g. 3.1) have problems which affect MudOS.
6 |
7 | Read the Makefile for comments referring to the RS/6000
8 |
9 | Bison uses alloca() (at least on the RS/6000) so you should stick to yacc.
10 |
--------------------------------------------------------------------------------
/doc/text/applies/__INIT:
--------------------------------------------------------------------------------
1 | __INIT - obsolete apply
2 |
3 | void __INIT();
4 |
5 | This function used to be called in objects right before create.
6 | global variable initialization is now handled by another function that
7 | cannot be interfered with, so this is no longer called.
8 |
9 | Tim Hollebeek Beek@ZorkMUD, Lima Bean, IdeaExchange, and elsewhere
10 |
--------------------------------------------------------------------------------
/doc/text/applies/heart_beat:
--------------------------------------------------------------------------------
1 | heart_beat - called periodically in objects in which it is enabled
2 |
3 | void heart_beat();
4 |
5 | If an object has called set_heart_beat(), this function will be called
6 | periodically in that object.
7 |
8 | See also:
9 | set_heart_beat
10 |
11 | Tim Hollebeek Beek@ZorkMUD, Lima Bean, IdeaExchange, and elsewhere
12 |
--------------------------------------------------------------------------------
/doc/text/applies/interactive/index:
--------------------------------------------------------------------------------
1 | Interactive applies
2 |
3 | These are the functions called in 'user' objects:
4 |
5 |
6 | * catch_tell
7 | * logon
8 | * net_dead
9 | * process_input
10 | * receive_message
11 | * receive_snoop
12 | * telnet_suboption
13 | * terminal_type
14 | * window_size
15 | * write_prompt
16 |
17 |
18 | Tim Hollebeek Beek@ZorkMUD, Lima Bean, IdeaExchange, and elsewhere
19 |
--------------------------------------------------------------------------------
/doc/text/applies/interactive/window_size:
--------------------------------------------------------------------------------
1 | window_size - report the users window size
2 |
3 | void window_size(int width, int height);
4 |
5 | window_size() is called with the user's window size, as reported by telnet
6 | negotiation. If the user's client never responds to the query, this is
7 | never called.
8 |
9 | Tim Hollebeek Beek@ZorkMUD, Lima Bean, IdeaExchange, and elsewhere
10 |
--------------------------------------------------------------------------------
/doc/text/applies/interactive/write_prompt:
--------------------------------------------------------------------------------
1 | write_prompt - called when the parser wants a prompt to be written.
2 |
3 | void write_prompt();
4 |
5 | If write_prompt is present in the player object, the driver will call it
6 | whenever the default prompt would normally be printed. The driver will
7 | not call write_prompt when the player is in input_to or ed.
8 |
9 | Tim Hollebeek Beek@ZorkMUD, Lima Bean, IdeaExchange, and elsewhere
10 |
--------------------------------------------------------------------------------
/doc/text/applies/master/get_root_uid:
--------------------------------------------------------------------------------
1 | get_root_uid - get the root uid
2 |
3 | string get_root_uid();
4 |
5 | This function is only used if PACKAGE_UIDS is used.
6 |
7 | This master apply is called by the driver each time
8 | it loads the master object, to verify that the master
9 | object has loaded, and to get the root uid defined by
10 | the mud. The function should return a string, eg "ROOT"
11 |
12 | See also:
13 | get_bb_uid
14 |
--------------------------------------------------------------------------------
/doc/text/applies/master/make_path_absolute:
--------------------------------------------------------------------------------
1 | make_path_absolute - resolve relative path name
2 |
3 | string make_path_absolute( string rel_path );
4 |
5 | This master apply is called by the ed() efun to
6 | resolve relative path names of a file to read/write, to an absolute path
7 | name.
8 |
9 | See also:
10 | ed
11 |
--------------------------------------------------------------------------------
/doc/text/applies/master/parse_command_all_word:
--------------------------------------------------------------------------------
1 | parse_command_all_word - find out what word refers to everything
2 |
3 | string parse_command_all_word();
4 |
5 | This routine is called in the master object to find out what word should
6 | be considered to refer to everyting. It is used by the parse_command() efun.
7 |
8 | See also:
9 | parse_command
10 |
--------------------------------------------------------------------------------
/doc/text/applies/master/parse_command_prepos_list:
--------------------------------------------------------------------------------
1 | parse_command_prepos_list - find out what words are valid prepositions
2 |
3 | string array parse_command_prepos_list();
4 |
5 | This routine is called in the master object to find out what words should
6 | be considered prepositions. It is used by the parsing package and the
7 | parse_command() efun.
8 |
9 | See also:
10 | parse_command
11 |
--------------------------------------------------------------------------------
/doc/text/applies/master/retrieve_ed_setup:
--------------------------------------------------------------------------------
1 | retrieve_ed_setup - retrieve a user's editor setup or configuration settings
2 |
3 | int retrieve_ed_setup( object user );
4 |
5 | This master apply is called by the ed() efun to retrieve
6 | a user's ed setup/configuration settings. This function
7 | should return the setup (contained in an int).
8 |
9 | See also:
10 | save_ed_setup
11 |
--------------------------------------------------------------------------------
/doc/text/applies/master/save_ed_setup:
--------------------------------------------------------------------------------
1 | save_ed_setup - save a user's editor setup or configuration settings
2 |
3 | int save_ed_setup( object user, int config );
4 |
5 | This master apply is called by the ed() efun to save
6 | a user's ed setup/configuration settings (contained in
7 | an int). This function should return an int for
8 | success (1 or TRUE)/failure (0 or FALSE).
9 |
10 | Seel also:
11 | retrieve_ed_setup
12 |
--------------------------------------------------------------------------------
/doc/text/applies/parsing/index:
--------------------------------------------------------------------------------
1 | Parsing applies
2 |
3 | These are the applies used by the parse_command() efun, and also the new
4 | parsing package:
5 |
6 |
7 | * parse_command_adjectiv_id_list
8 | * parse_command_id_list
9 | * parse_command_plural_id_list
10 |
11 |
12 | Tim Hollebeek Beek@ZorkMUD, Lima Bean, IdeaExchange, and elsewhere
13 |
--------------------------------------------------------------------------------
/doc/text/applies/parsing/parse_command_id_list:
--------------------------------------------------------------------------------
1 | parse_command_id_list - returns a list of names to the parser
2 |
3 | string array parse_command_id_list();
4 |
5 | This routine is used to find out what nouns the object responds to, and is
6 | used by the parsing package and the parse_command() efun. In addition,
7 | anything returned by the master object will work on ANY object.
8 |
9 | See also:
10 | parse_command
11 |
--------------------------------------------------------------------------------
/doc/text/concepts/index:
--------------------------------------------------------------------------------
1 | MudOS driver concepts
2 |
3 | This is pretty much a grab bag of stuff right now ...
4 |
5 |
6 | * MudOS driver
7 | * LPC
8 | * message()
9 | * objects
10 | * OOP
11 | * preprocessor
12 | * simul_efuns
13 | * socket_efuns
14 | * defines
15 |
16 |
17 | Tim Hollebeek Beek@ZorkMUD, Lima Bean, IdeaExchange, and elsewhere
18 |
19 |
--------------------------------------------------------------------------------
/doc/text/driver/index:
--------------------------------------------------------------------------------
1 | Driver documentation
2 |
3 | The vast majority of this is hopefully out of date, and hopefully will be
4 | rewritten soon. It is here mostly for historical reasons.
5 |
6 |
7 | * malloc
8 | * stackmachine
9 | * done-mudos
10 | * done-lars
11 | * adding_efuns
12 |
13 |
14 | Tim Hollebeek Beek@ZorkMUD, Lima Bean, IdeaExchange, and elsewhere
15 |
--------------------------------------------------------------------------------
/doc/text/efuns/TODO:
--------------------------------------------------------------------------------
1 | parse_add_rule(string, string) [PACKAGE_PARSER]
2 | parse_add_synonym(string, string, void | string) [PACKAGE_PARSER]
3 | parse_dump() [PACKAGE_PARSER]
4 | parse_init() [PACKAGE_PARSER]
5 | parse_my_rules(object, string, void | int) [PACKAGE_PARSER]
6 | parse_refresh() [PACKAGE_PARSER]
7 | parse_remove(string) [PACKAGE_PARSER]
8 | parse_sentence(string, void|int) [PACKAGE_PARSER]
9 |
--------------------------------------------------------------------------------
/doc/text/efuns/arrays/allocate:
--------------------------------------------------------------------------------
1 | allocate - allocate an array
2 |
3 | array allocate( int size );
4 |
5 | Allocate an array of elements. The number of elements must be >= 0
6 | and not bigger than a system maximum (usually ~10000). All elements are
7 | initialized to 0.
8 |
9 | See also:
10 | sizeof,
11 | allocate_mapping
12 |
13 |
--------------------------------------------------------------------------------
/doc/text/efuns/arrays/filter_array:
--------------------------------------------------------------------------------
1 | filter_array - return a selective sub-array
2 |
3 | array filter_array( array arr, string fun, object ob, mixed extra, ... );
4 |
5 | array filter_array( array arr, function f, mixed extra, ...);
6 |
7 | filter_array() is really the same as the filter() efun.
8 |
9 | See also:
10 | filter
11 |
12 | Tim Hollebeek Beek@ZorkMUD, Lima Bean, IdeaExchange, and elsewhere
13 |
--------------------------------------------------------------------------------
/doc/text/efuns/arrays/index:
--------------------------------------------------------------------------------
1 | Array efuns
2 |
3 | These efuns exist for the manipulation of array values:
4 |
5 |
6 | * allocate
7 | * arrayp
8 | * filter_array
9 | * map_array
10 | * member_array
11 | * pointerp
12 | * sort_array
13 | * unique_array
14 |
15 |
16 | Tim Hollebeek Beek@ZorkMUD, Lima Bean, IdeaExchange, and elsewhere
17 |
18 |
--------------------------------------------------------------------------------
/doc/text/efuns/arrays/map_array:
--------------------------------------------------------------------------------
1 | map_array - modify an array of elements via application of a function
2 |
3 | array map_array( array arr, string fun, object ob, mixed extra, ... );
4 |
5 | array map_array( array arr, function f, mixed extra, ... );;
6 |
7 | The map_array() efun is really just an alias for the map() efun.
8 |
9 | See also:
10 | map
11 |
--------------------------------------------------------------------------------
/doc/text/efuns/buffers/crc32:
--------------------------------------------------------------------------------
1 | crc32 - compute the cycle redundancy code for a buffer or string
2 |
3 | int crc32( buffer | string x );
4 |
5 | Computes and returns the CRC-32 code for the given buffer or string, `x'.
6 |
7 | Tim Hollebeek Beek@ZorkMUD, Lima Bean, IdeaExchange, and elsewhere
8 |
--------------------------------------------------------------------------------
/doc/text/efuns/buffers/index:
--------------------------------------------------------------------------------
1 | Buffer Efuns
2 |
3 | The following efuns are available for manipulating buffer values:
4 |
5 |
6 | * allocate_buffer
7 | * bufferp
8 | * crc32
9 | * read_buffer
10 | * write_buffer
11 |
12 |
13 | Tim Hollebeek Beek@ZorkMUD, Lima Bean, IdeaExchange, and elsewhere
14 |
15 |
--------------------------------------------------------------------------------
/doc/text/efuns/calls/this_object:
--------------------------------------------------------------------------------
1 | this_object - return the object pointer of the calling object
2 |
3 | object this_object();
4 |
5 | Return the object pointer of the current object. Useful for passing the
6 | current object to other functions.
7 |
8 | See also:
9 | this_player,
10 | previous_object,
11 | origin
12 |
13 | Tim Hollebeek Beek@ZorkMUD, Lima Bean, IdeaExchange, and elsewhere
14 |
--------------------------------------------------------------------------------
/doc/text/efuns/compile/index:
--------------------------------------------------------------------------------
1 | Compilation efuns
2 |
3 | The only efun in here currently is the LPC->C one.
4 |
5 |
6 | * generate_source
7 |
8 |
9 | Tim Hollebeek Beek@ZorkMUD, Lima Bean, IdeaExchange, and elsewhere
10 |
--------------------------------------------------------------------------------
/doc/text/efuns/filesystem/cp:
--------------------------------------------------------------------------------
1 | cp - copy a file
2 |
3 | int cp(string src, string dst);
4 |
5 | Copies the file 'src' to the file 'dst'.
6 |
7 | Returns 1 for success, returns -1 if the first src is unreadable, -2 if
8 | dst is unreadable, and -3 if an i/o error occurs.
9 |
10 | See also:
11 | rm,
12 | rmdir,
13 | rename,
14 | link
15 |
16 | Tim Hollebeek Beek@ZorkMUD, Lima Bean, IdeaExchange, and elsewhere
17 |
--------------------------------------------------------------------------------
/doc/text/efuns/filesystem/file_size:
--------------------------------------------------------------------------------
1 | file_size - get the size of a file
2 |
3 | int file_size( string file );
4 |
5 | file_size() returns the size of file 'file' in bytes. Size -1
6 | indicates that 'file' either does not exist, or that it is not
7 | readable. Size -2 indicates that 'file' is a directory.
8 |
9 | See also:
10 | file_length,
11 | stat,
12 | get_dir
13 |
--------------------------------------------------------------------------------
/doc/text/efuns/filesystem/mkdir:
--------------------------------------------------------------------------------
1 | mkdir - make a directory
2 |
3 | int mkdir( string directory );
4 |
5 | Creates the specified directory. Returns 1 if successful, 0 if not.
6 |
7 | See also:
8 | rm,
9 | rmdir,
10 | link
11 |
12 | Tim Hollebeek Beek@ZorkMUD, Lima Bean, IdeaExchange, and elsewhere
13 |
--------------------------------------------------------------------------------
/doc/text/efuns/filesystem/rename:
--------------------------------------------------------------------------------
1 | rename - rename a file
2 |
3 | int rename( string src, string dst );
4 |
5 | Renames the file 'src' to 'dst'.
6 |
7 | rename() returns zero (0) to indicate success. Nonzero indicates failure.
8 |
9 | See also:
10 | rm,
11 | rmdir,
12 | cp,
13 | link
14 |
--------------------------------------------------------------------------------
/doc/text/efuns/filesystem/rm:
--------------------------------------------------------------------------------
1 | rm - remove a file
2 |
3 | int rm( string file );
4 |
5 | Remove file `file'. Returns 0 for failure and 1 for success.
6 |
7 | See also:
8 | mkdir,
9 | rmdir,
10 | link
11 |
12 | Tim Hollebeek Beek@ZorkMUD, Lima Bean, IdeaExchange, and elsewhere
13 |
--------------------------------------------------------------------------------
/doc/text/efuns/filesystem/rmdir:
--------------------------------------------------------------------------------
1 | rmdir - remove a directory
2 |
3 | int rmdir( string dir );
4 |
5 | Remove directory `dir'.
6 | Returns nonzero for success, zero (0) for failure.
7 |
8 | See also:
9 | rm,
10 | mkdir,
11 | link
12 |
--------------------------------------------------------------------------------
/doc/text/efuns/filesystem/write_bytes:
--------------------------------------------------------------------------------
1 | write_bytes - writes a contiguous series of bytes to a file
2 |
3 | int write_bytes( string path, int start, string series );
4 |
5 | This function writes the bytes in 'series' into the file named by 'path'
6 | beginning at byte # 'start'. It returns zero (0) upon failure, 1 otherwise.
7 |
8 | See also:
9 | write_file,
10 | read_bytes
11 |
--------------------------------------------------------------------------------
/doc/text/efuns/filesystem/write_file:
--------------------------------------------------------------------------------
1 | write_file - appends a string to a file
2 |
3 | int write_file( string file, string str, int flag );
4 |
5 | Append the string `str' into the file `file'. Returns 0 or 1 for
6 | failure or success. If flag is 1, write_file overwrites instead of
7 | appending.
8 |
9 | See also:
10 | read_file,
11 | write_buffer,
12 | file_size
13 |
--------------------------------------------------------------------------------
/doc/text/efuns/floats/acos:
--------------------------------------------------------------------------------
1 | acos - return the arccosine of a float
2 |
3 | float acos( float f );
4 |
5 | This efun is available only if PACKAGE_MATH is compiled in to the driver.
6 |
7 | Returns the arccosine of its argument, `f', measured in radians.
8 |
9 | See also:
10 | asin,
11 | atan,
12 | cos,
13 | sin,
14 | tan
15 |
--------------------------------------------------------------------------------
/doc/text/efuns/floats/asin:
--------------------------------------------------------------------------------
1 | asin - return the arcsine of a float
2 |
3 | float asin( float f );
4 |
5 | This efun is only available if PACKAGE_MATH is compiled in.
6 |
7 | Returns the arcsine of its argument, `f', measured in radians.
8 |
9 | See also:
10 | acos,
11 | atan,
12 | cos,
13 | sin,
14 | tan
15 |
--------------------------------------------------------------------------------
/doc/text/efuns/floats/atan:
--------------------------------------------------------------------------------
1 | atan - return the tangent of a float
2 |
3 | float atan( float f );
4 |
5 | This efun is only available if PACKAGE_MATH is not compiled in.
6 |
7 | Returns the arctangent of its argument, `f', measured in radians.
8 |
9 | See also:
10 | acos,
11 | asin,
12 | cos,
13 | sin,
14 | tan
15 |
--------------------------------------------------------------------------------
/doc/text/efuns/floats/ceil:
--------------------------------------------------------------------------------
1 | ceil - round a float up to the nearest integer
2 |
3 | float ceil( float f );
4 |
5 | This efun is only available if PACKAGE_MATH is compiled in.
6 |
7 | Returns (as a float) the nearest integer number equal to or greater than f.
8 |
9 | See also:
10 | floor,
11 | to_int,
12 | to_float
13 |
14 | Tim Hollebeek Beek@ZorkMUD, Lima Bean, IdeaExchange, and elsewhere
15 |
--------------------------------------------------------------------------------
/doc/text/efuns/floats/cos:
--------------------------------------------------------------------------------
1 | cos - return the cosine of a float
2 |
3 | float cos( float f );
4 |
5 | This efun is only available if PACKAGE_MATH is compiled into the driver.
6 |
7 | Returns the cosine of its argument, `f', measured in radians.
8 |
9 | See also:
10 | acos,
11 | asin,
12 | atan,
13 | sin,
14 | tan
15 |
16 | Tim Hollebeek Beek@ZorkMUD, Lima Bean, IdeaExchange, and elsewhere
17 |
--------------------------------------------------------------------------------
/doc/text/efuns/floats/exp:
--------------------------------------------------------------------------------
1 | exp - find e to the power of a float
2 |
3 | float exp( float f );
4 |
5 | This efun is only available if PACKAGE_MATH is compiled in.
6 |
7 | exp() returns e^f.
8 |
9 | See also:
10 | log,
11 | pow,
12 | sqrt
13 |
14 | Tim Hollebeek Beek@ZorkMUD, Lima Bean, IdeaExchange, and elsewhere
15 |
--------------------------------------------------------------------------------
/doc/text/efuns/floats/floor:
--------------------------------------------------------------------------------
1 | floor - round a float down to the nearest integer
2 |
3 | float floor( float f );
4 |
5 | This efun is only available if PACKAGE_MATH is compiled in.
6 |
7 | Returns (as a float) the nearest integer number equal to or smaller than f.
8 |
9 | See also:
10 | ceil,
11 | to_int,
12 | to_float
13 |
--------------------------------------------------------------------------------
/doc/text/efuns/floats/index:
--------------------------------------------------------------------------------
1 | Float Efuns
2 |
3 | The following efuns provide general math library functions.
4 |
5 |
6 | * acos
7 | * asin
8 | * atan
9 | * ceil
10 | * cos
11 | * exp
12 | * floatp
13 | * floor
14 | * log
15 | * pow
16 | * sin
17 | * sqrt
18 | * tan
19 | * to_int
20 |
21 |
22 | Tim Hollebeek Beek@ZorkMUD, Lima Bean, IdeaExchange, and elsewhere
23 |
--------------------------------------------------------------------------------
/doc/text/efuns/floats/log:
--------------------------------------------------------------------------------
1 | log - returns the natural logarithm of a float
2 |
3 | float log( float f );
4 |
5 | This efun is only available if PACKAGE_MATH is compiled in.
6 |
7 | Returns the natural logarithm of its argument, `f'. `f' must be positive.
8 |
9 | See also:
10 | exp,
11 | pow,
12 | sqrt
13 |
--------------------------------------------------------------------------------
/doc/text/efuns/floats/pow:
--------------------------------------------------------------------------------
1 | pow - find an exponent of a float
2 |
3 | float pow( float x, float y );
4 |
5 | This efun is only available if PACKAGE_MATH is defined.
6 |
7 | pow() returns x to the y power. If x is 0.0, y must be positive. If x is
8 | negative, y must be an integer.
9 |
10 | See also:
11 | exp,
12 | log,
13 | sqrt
14 |
--------------------------------------------------------------------------------
/doc/text/efuns/floats/sin:
--------------------------------------------------------------------------------
1 | sin - return the sine of a float
2 |
3 | float sin( float f );
4 |
5 | This efun is only available if PACKAGE_MATH is compiled in.
6 |
7 | Returns the sine of its argument, `f', measured in radians.
8 |
9 | See also:
10 | acos,
11 | asin,
12 | atan,
13 | cos,
14 | tan
15 |
16 | Tim Hollebeek Beek@ZorkMUD, Lima Bean, IdeaExchange, and elsewhere
17 |
--------------------------------------------------------------------------------
/doc/text/efuns/floats/sqrt:
--------------------------------------------------------------------------------
1 | sqrt - returns the square root of a float
2 |
3 | float sqrt( float f );
4 |
5 | This efun is only available if PACKAGE_MATH is compiled in.
6 |
7 | sqrt() returns the non-negative square root of its argument, `f'. The value
8 | of `f' must not be negative.
9 |
10 | See also:
11 | exp,
12 | log,
13 | pow
14 |
15 | Tim Hollebeek Beek@ZorkMUD, Lima Bean, IdeaExchange, and elsewhere
16 |
--------------------------------------------------------------------------------
/doc/text/efuns/floats/tan:
--------------------------------------------------------------------------------
1 | tan - return the tangent of a float
2 |
3 | float tan( float f );
4 |
5 | This efun is only available if PACKAGE_MATH is compiled in.
6 |
7 | Returns the tangent of its argument, 'f', measured in radians.
8 |
9 | See also:
10 | acos,
11 | asin,
12 | atan,
13 | cos,
14 | sin
15 |
--------------------------------------------------------------------------------
/doc/text/efuns/functions/evaluate:
--------------------------------------------------------------------------------
1 | evaluate - evaluate a function pointer
2 |
3 | mixed evaluate(mixed f, ...);
4 |
5 | If f is a function, f is called with the rest of the arguments.
6 | Otherwise, f is returned. evaluate(f, ...) is the same as (*f)(...).
7 |
8 | Tim Hollebeek Beek@ZorkMUD, Lima Bean, IdeaExchange, and elsewhere
9 |
--------------------------------------------------------------------------------
/doc/text/efuns/functions/function_owner:
--------------------------------------------------------------------------------
1 | function_owner - return the owner of a given function.
2 |
3 | object function_owner(function);
4 |
5 | function_owner returns the object that owns the function specified by
6 | the argument.
7 |
8 | This function requires PACKAGE_CONTRIB to be defined in the options file.
9 |
10 | See also:
11 | bind
12 |
--------------------------------------------------------------------------------
/doc/text/efuns/functions/index:
--------------------------------------------------------------------------------
1 | Function efuns
2 |
3 | These efuns are for use with function pointers.
4 |
5 |
6 | * bind
7 | * evaluate
8 | * functionp
9 |
10 |
11 | Tim Hollebeek Beek@ZorkMUD, Lima Bean, IdeaExchange, and elsewhere
12 |
--------------------------------------------------------------------------------
/doc/text/efuns/general/index:
--------------------------------------------------------------------------------
1 | Efuns for general LPC values
2 |
3 | These efuns act on arbitrary values of various types.
4 |
5 |
6 | * copy
7 | * fetch_variable
8 | * filter
9 | * map
10 | * restore_variable
11 | * save_variable
12 | * store_variable
13 | * sizeof
14 | * typeof
15 | * undefinedp
16 |
17 |
18 | Tim Hollebeek Beek@ZorkMUD, Lima Bean, IdeaExchange, and elsewhere
19 |
--------------------------------------------------------------------------------
/doc/text/efuns/general/restore_variable:
--------------------------------------------------------------------------------
1 | restore_variable - restore value of a variable from a string
2 |
3 | mixed restore_variable( string value );
4 |
5 | Restores an LPC value from a string. The format used is the
6 | same format as save/restore_object.
7 |
8 | See also:
9 | save_variable,
10 | restore_object
11 |
12 | Tim Hollebeek Beek@ZorkMUD, Lima Bean, IdeaExchange, and elsewhere
13 |
--------------------------------------------------------------------------------
/doc/text/efuns/general/save_variable:
--------------------------------------------------------------------------------
1 | save_variable - save the value of variable into a string
2 |
3 | string save_variable( mixed var );
4 |
5 | Saves an LPC value into a string. The format is the same as
6 | save/restore_object.
7 |
8 | See also:
9 | restore_variable,
10 | restore_object
11 |
--------------------------------------------------------------------------------
/doc/text/efuns/general/sizeof:
--------------------------------------------------------------------------------
1 | sizeof - return the number of elements in an array
2 |
3 | int sizeof( mixed var );
4 |
5 | Return the number of elements in an array, mapping, string, class or
6 | buffer 'var'. If `var' is not an array, mapping, string, class or
7 | buffer, then zero (0) is returned.
8 |
9 | See also:
10 | strlen
11 |
--------------------------------------------------------------------------------
/doc/text/efuns/interactive/disable_commands:
--------------------------------------------------------------------------------
1 | disable_commands - makes a living object non-living
2 |
3 | void disable_commands();
4 |
5 | This efun is only available if NO_ADD_ACTION is not defined.
6 |
7 | Causes the current object to no longer be able to execute commands.
8 |
9 | See also:
10 | enable_commands
11 |
--------------------------------------------------------------------------------
/doc/text/efuns/interactive/disable_wizard:
--------------------------------------------------------------------------------
1 | disable_wizard - remove wizard priveleges from an object
2 |
3 | void disable_wizard();
4 |
5 | This efun is only available if NO_WIZARDS is not defined.
6 |
7 | The opposite of enable_wizard(). Disables wizard privileges from the
8 | current object.
9 |
10 | See also:
11 | enable_wizard,
12 | wizardp
13 |
--------------------------------------------------------------------------------
/doc/text/efuns/interactive/ed_cmd:
--------------------------------------------------------------------------------
1 | ed_cmd - perform an 'ed' command
2 |
3 | This efun is only available if OLD_ED is not defined.
4 |
5 | string ed_cmd(string cmd);
6 |
7 | Performs the ed command 'cmd'. The result of the command is returned.
8 | Ed must have been started with ed_start() in order to call this efun.
9 |
10 | See also:
11 | ed_start
12 |
--------------------------------------------------------------------------------
/doc/text/efuns/interactive/find_player:
--------------------------------------------------------------------------------
1 | find_player - find a player by name
2 |
3 | object find_player( string str );
4 |
5 | This efun is only available when NO_ADD_ACTION is not defined.
6 |
7 | Similar to find_living(), but only searches through objects that are
8 | interactive, or were once interactive.
9 |
10 | See also:
11 | find_living,
12 | livings,
13 | users,
14 | set_living_name
15 |
--------------------------------------------------------------------------------
/doc/text/efuns/interactive/in_edit:
--------------------------------------------------------------------------------
1 | in_edit() - determine if a player is in the editor
2 |
3 | string in_edit();
4 |
5 | string in_edit(object ob);
6 |
7 | If the given object is in the editor, the file being edited is
8 | returned, else zero. If no object is given, this_object() is used.
9 |
10 | See also:
11 | ed,
12 | in_input
13 |
14 | Tim Hollebeek Beek@ZorkMUD, Lima Bean, IdeaExchange, and elsewhere
15 |
--------------------------------------------------------------------------------
/doc/text/efuns/interactive/interactive:
--------------------------------------------------------------------------------
1 | interactive - detects whether or not a given object is an interactive
2 |
3 | int interactive( object ob );
4 |
5 | Return non-zero if 'ob' is an interactive player. 0 will be returned
6 | if he is link dead.
7 |
8 | See also:
9 | query_ip_number,
10 | query_ip_name,
11 | enable_commands
12 |
13 | Tim Hollebeek Beek@ZorkMUD, Lima Bean, IdeaExchange, and elsewhere
14 |
--------------------------------------------------------------------------------
/doc/text/efuns/interactive/query_host_name:
--------------------------------------------------------------------------------
1 | query_host_name - return the host name
2 |
3 | string query_host_name();
4 |
5 | query_host_name() returns the name of the host.
6 |
7 | See also:
8 | resolve,
9 | socket_address,
10 | query_ip_name,
11 | query_ip_number
12 |
13 | Tim Hollebeek Beek@ZorkMUD, Lima Bean, IdeaExchange, and elsewhere
14 |
--------------------------------------------------------------------------------
/doc/text/efuns/interactive/query_idle:
--------------------------------------------------------------------------------
1 | query_idle - determine how many seconds an interactive player has been idle
2 |
3 | int query_idle( object ob );
4 |
5 | Query how many seconds a player object (ob) has been idling.
6 |
7 | See also:
8 | in_edit,
9 | in_input
10 |
11 | Tim Hollebeek Beek@ZorkMUD, Lima Bean, IdeaExchange, and elsewhere
12 |
--------------------------------------------------------------------------------
/doc/text/efuns/interactive/query_ip_number:
--------------------------------------------------------------------------------
1 | query_ip_number - return the ip number for a player object
2 |
3 | string query_ip_number( object ob );
4 |
5 | Return the ip-number (dotted decimal form) for player `ob'.
6 |
7 | See also:
8 | query_ip_name,
9 | query_host_name,
10 | resolve,
11 | socket_address
12 |
13 | Tim Hollebeek Beek@ZorkMUD, Lima Bean, IdeaExchange, and elsewhere
14 |
--------------------------------------------------------------------------------
/doc/text/efuns/interactive/query_snoop:
--------------------------------------------------------------------------------
1 | query_snoop - return the snooper of an interactive object
2 |
3 | object query_snoop( object ob );
4 |
5 | If `ob' (an interactive object) is being snooped by another interactive object,
6 | the snooping object is returned. Otherwise, 0 is returned.
7 |
8 | See also:
9 | snoop,
10 | query_snooping
11 |
--------------------------------------------------------------------------------
/doc/text/efuns/interactive/query_snooping:
--------------------------------------------------------------------------------
1 | query_snooping - return the object than an object is snooping
2 |
3 | object query_snooping( object ob );
4 |
5 | If `ob' (an interactive object) is snooping another interactive object, the
6 | snooped object is returned. Otherwise, 0 is returned.
7 |
8 | See also:
9 | snoop,
10 | query_snoop
11 |
12 | Tim Hollebeek Beek@ZorkMUD, Lima Bean, IdeaExchange, and elsewhere
13 |
--------------------------------------------------------------------------------
/doc/text/efuns/interactive/shout:
--------------------------------------------------------------------------------
1 | shout - sends a message to all living objects
2 |
3 | void shout( string str );
4 |
5 | Sends the string `str' to all living objects except this_player().
6 |
7 | See also:
8 | message,
9 | write,
10 | tell_object,
11 | tell_room,
12 | say
13 |
14 | Tim Hollebeek Beek@ZorkMUD, Lima Bean, IdeaExchange, and elsewhere
15 |
16 |
--------------------------------------------------------------------------------
/doc/text/efuns/interactive/this_player:
--------------------------------------------------------------------------------
1 | this_player - return the object representing the current player
2 |
3 | object this_player( int flag );
4 |
5 | this_player() is exactly the same as this_user().
6 |
7 | See also:
8 | this_user
9 |
--------------------------------------------------------------------------------
/doc/text/efuns/interactive/userp:
--------------------------------------------------------------------------------
1 | userp - determine if a given object was once interactive
2 |
3 | int userp( object );
4 |
5 | Returns 1 if the arg was once interactive.
6 |
7 | See also:
8 | interactive,
9 | users,
10 | living
11 |
12 | Tim Hollebeek Beek@ZorkMUD, Lima Bean, IdeaExchange, and elsewhere
13 |
--------------------------------------------------------------------------------
/doc/text/efuns/interactive/users:
--------------------------------------------------------------------------------
1 | users - return an array of objects containing all interactive players
2 |
3 | object array users();
4 |
5 | Return an array of objects, containing all interactive players.
6 |
7 | See also:
8 | livings,
9 | children,
10 | objects
11 |
12 | Tim Hollebeek Beek@ZorkMUD, Lima Bean, IdeaExchange, and elsewhere
13 |
--------------------------------------------------------------------------------
/doc/text/efuns/interactive/wizardp:
--------------------------------------------------------------------------------
1 | wizardp - determines if a given object had enable_wizard() performed in it
2 |
3 | int wizardp( object );
4 |
5 | This efun is only available if NO_WIZARDS is not compiled in.
6 |
7 | Returns 1 if the arg had enable_wizard() performed on it.
8 |
9 | See also:
10 | disable_wizard,
11 | enable_wizard
12 |
13 | Tim Hollebeek Beek@ZorkMUD, Lima Bean, IdeaExchange, and elsewhere
14 |
--------------------------------------------------------------------------------
/doc/text/efuns/interactive/write:
--------------------------------------------------------------------------------
1 | write() - send a message to current player
2 |
3 | void write( mixed str );
4 |
5 | Write a message `str' to current player. `str' can also be a number, which
6 | will be translated to a string.
7 |
8 | See also:
9 | message,
10 | tell_object,
11 | tell_room,
12 | shout,
13 | say
14 |
15 | Tim Hollebeek Beek@ZorkMUD, Lima Bean, IdeaExchange, and elsewhere
16 |
--------------------------------------------------------------------------------
/doc/text/efuns/internals/get_config:
--------------------------------------------------------------------------------
1 | get_config - query various driver config settings
2 |
3 | mixed get_config( int );
4 |
5 | This efun is used to query the driver's various config
6 | settings. Please refer to the "runtime_config.h"
7 | include file for a list of currently recognized options.
8 |
9 | Tim Hollebeek Beek@ZorkMUD, Lima Bean, IdeaExchange, and elsewhere
10 |
--------------------------------------------------------------------------------
/doc/text/efuns/internals/query_load_average:
--------------------------------------------------------------------------------
1 | query_load_average - forces an error to occur in an object
2 |
3 | string query_load_average();
4 |
5 | This function returns a string which reports two things: 1) user commands
6 | per second, and 2) compiled lines per second.
7 |
8 | See also:
9 | rusage
10 |
11 | Tim Hollebeek Beek@ZorkMUD, Lima Bean, IdeaExchange, and elsewhere
12 |
--------------------------------------------------------------------------------
/doc/text/efuns/mappings/filter_mapping:
--------------------------------------------------------------------------------
1 | filter_mapping - return a selective sub-mapping
2 |
3 | mapping filter_mapping(mapping map, string fun, object ob, mixed extra, ...);
4 |
5 | mapping filter_array(mapping map, function f, mixed extra, ...);
6 |
7 | filter_mapping() is really the same as the filter() efun.
8 |
9 | See also:
10 | filter
11 |
12 | Tim Hollebeek Beek@ZorkMUD, Lima Bean, IdeaExchange, and elsewhere
13 |
--------------------------------------------------------------------------------
/doc/text/efuns/mappings/index:
--------------------------------------------------------------------------------
1 | Mapping Efuns
2 |
3 | The following efuns operate on mappings:
4 |
5 |
6 | * allocate_mapping
7 | * keys
8 | * map_delete
9 | * map_mapping
10 | * mapp
11 | * match_path
12 | * unique_mapping
13 | * values
14 |
15 |
16 | Tim Hollebeek Beek@ZorkMUD, Lima Bean, IdeaExchange, and elsewhere
17 |
--------------------------------------------------------------------------------
/doc/text/efuns/mappings/m_indices:
--------------------------------------------------------------------------------
1 | m_indices - return the keys of a mapping
2 |
3 | array m_indices(mapping);
4 |
5 | This efun is only available if COMPAT_32 is defined. It behaves exactly
6 | the same as keys().
7 |
8 | See also:
9 | keys
10 |
11 | Tim Hollebeek Beek@ZorkMUD, Lima Bean, IdeaExchange, and elsewhere
12 |
--------------------------------------------------------------------------------
/doc/text/efuns/mappings/m_values:
--------------------------------------------------------------------------------
1 | m_values - return the values of a mapping
2 |
3 | array m_values(mapping);
4 |
5 | This efun is only available if COMPAT_32 is defined. It behaves exactly
6 | the same as values().
7 |
8 | See also:
9 | values
10 |
11 | Tim Hollebeek Beek@ZorkMUD, Lima Bean, IdeaExchange, and elsewhere
12 |
--------------------------------------------------------------------------------
/doc/text/efuns/mixed/arrayp:
--------------------------------------------------------------------------------
1 | arrayp - determine whether or not a given variable is an array
2 |
3 | int arrayp( mixed arg );
4 |
5 | Return 1 if `arg' is an array, zero otherwise.
6 |
7 | See also:
8 | typeof
9 |
--------------------------------------------------------------------------------
/doc/text/efuns/mixed/bufferp:
--------------------------------------------------------------------------------
1 | bufferp - determine whether or not a given variable is a buffer
2 |
3 | int bufferp( mixed arg );
4 |
5 | Return 1 if `arg' is a buffer value and zero otherwise.
6 |
7 | Tim Hollebeek Beek@ZorkMUD, Lima Bean, IdeaExchange, and elsewhere
8 |
--------------------------------------------------------------------------------
/doc/text/efuns/mixed/classp:
--------------------------------------------------------------------------------
1 | classp - determine whether or not a given variable is a class
2 |
3 | int classp(mixed);
4 |
5 | Return 1 if the argument is a class.
6 |
7 | Tim Hollebeek Beek@ZorkMUD, Lima Bean, IdeaExchange, and elsewhere
8 |
--------------------------------------------------------------------------------
/doc/text/efuns/mixed/floatp:
--------------------------------------------------------------------------------
1 | floatp - determine whether or not a given variable is a float
2 |
3 | int floatp( mixed arg );
4 |
5 | Return 1 if `arg' is a float number and zero (0) otherwise.
6 |
7 | Tim Hollebeek Beek@ZorkMUD, Lima Bean, IdeaExchange, and elsewhere
8 |
--------------------------------------------------------------------------------
/doc/text/efuns/mixed/intp:
--------------------------------------------------------------------------------
1 | intp - determine whether or not a given variable is an integer
2 |
3 | int intp( mixed arg );
4 |
5 | Return 1 if 'arg' is an integer number and zero (0) otherwise.
6 |
7 | Tim Hollebeek Beek@ZorkMUD, Lima Bean, IdeaExchange, and elsewhere
8 |
--------------------------------------------------------------------------------
/doc/text/efuns/mixed/mapp:
--------------------------------------------------------------------------------
1 | mapp - determine whether or not a given variable is a mapping
2 |
3 | int mapp( mixed arg );
4 |
5 | Return 1 if `arg' is a mapping.
6 |
7 | Tim Hollebeek Beek@ZorkMUD, Lima Bean, IdeaExchange, and elsewhere
8 |
--------------------------------------------------------------------------------
/doc/text/efuns/mixed/objectp:
--------------------------------------------------------------------------------
1 | objectp - determine whether or not a given variable is an object
2 |
3 | int objectp( mixed arg );
4 |
5 | Return 1 if `arg' is an object.
6 |
7 | Tim Hollebeek Beek@ZorkMUD, Lima Bean, IdeaExchange, and elsewhere
8 |
--------------------------------------------------------------------------------
/doc/text/efuns/mixed/pointerp:
--------------------------------------------------------------------------------
1 | pointerp - determine whether or not a given variable is an array
2 |
3 | int pointerp( mixed arg );
4 |
5 | pointerp() is provided for compatibility; it is the same as the arrayp() efun.
6 |
7 | See also:
8 | arrayp
9 |
--------------------------------------------------------------------------------
/doc/text/efuns/mixed/stringp:
--------------------------------------------------------------------------------
1 | stringp - determine whether or not a given variable is a string
2 |
3 | int stringp( mixed arg );
4 |
5 | Returns 1 if 'arg' is a string, and zero if not.
6 |
7 | Tim Hollebeek Beek@ZorkMUD, Lima Bean, IdeaExchange, and elsewhere
8 |
--------------------------------------------------------------------------------
/doc/text/efuns/mudlib/living:
--------------------------------------------------------------------------------
1 | living - detects whether or not a given object is "living"
2 |
3 | int living( object ob );
4 |
5 | This efun is only available if NO_ADD_ACTION is not compiled in.
6 |
7 | Return true if `ob' is a living object (that is, if "enable_commands()" has
8 | been called by `ob').
9 |
10 | See also:
11 | enable_commands
12 |
13 | Tim Hollebeek Beek@ZorkMUD, Lima Bean, IdeaExchange, and elsewhere
14 |
15 |
--------------------------------------------------------------------------------
/doc/text/efuns/numbers/index:
--------------------------------------------------------------------------------
1 | Efuns relating to ints
2 |
3 | Pretty trivial stuff here
4 |
5 |
6 | * intp
7 | * nullp
8 | * random
9 | * to_float
10 |
11 |
12 | Tim Hollebeek Beek@ZorkMUD, Lima Bean, IdeaExchange, and elsewhere
13 |
--------------------------------------------------------------------------------
/doc/text/efuns/numbers/random:
--------------------------------------------------------------------------------
1 | random - return a pseudo-random number
2 |
3 | int random( int n );
4 |
5 | Return a pseudo-random number from the range [0 .. (n -1)] (inclusive).
6 |
7 | Tim Hollebeek Beek@ZorkMUD, Lima Bean, IdeaExchange, and elsewhere
8 |
--------------------------------------------------------------------------------
/doc/text/efuns/numbers/to_float:
--------------------------------------------------------------------------------
1 | to_float - convert an int to a float
2 |
3 | float to_float( int i );
4 |
5 | The to_float() call returns the number of type 'float' that is equivalent to
6 | the int 'i'.
7 |
8 | See also:
9 | to_int,
10 | read_buffer,
11 | sprintf,
12 | sscanf
13 |
14 | Tim Hollebeek Beek@ZorkMUD, Lima Bean, IdeaExchange, and elsewhere
15 |
16 |
--------------------------------------------------------------------------------
/doc/text/efuns/objects/heart_beat_info:
--------------------------------------------------------------------------------
1 | heart_beat_info - return an array of objects with active heartbeats
2 |
3 | object array heart_beat_info();
4 |
5 | Returns an array of all the objects with active heart_beats. This efun
6 | is only available if COMPAT_32 is defined.
7 |
8 | See also:
9 | heart_beats.html
10 |
11 | Tim Hollebeek Beek@ZorkMUD, Lima Bean, IdeaExchange, and elsewhere
12 |
--------------------------------------------------------------------------------
/doc/text/efuns/objects/heart_beats:
--------------------------------------------------------------------------------
1 | heart_beats - return an array of objects with active heartbeats
2 |
3 | object array heart_beats();
4 |
5 | Returns an array of all the objects with active heart_beats. This efun
6 | is only available if PACKAGE_CONTRIB is defined.
7 |
8 | See also:
9 | heart_beat,
10 | set_heart_beat,
11 | query_heart_beat
12 |
13 | Tim Hollebeek Beek@ZorkMUD, Lima Bean, IdeaExchange, and elsewhere
14 |
--------------------------------------------------------------------------------
/doc/text/efuns/objects/master:
--------------------------------------------------------------------------------
1 | master - returns the master object
2 |
3 | object master();
4 |
5 | Returns a pointer to the master object.
6 |
7 | See also:
8 | find_object
9 |
10 | Tim Hollebeek Beek@ZorkMUD, Lima Bean, IdeaExchange, and elsewhere
11 |
--------------------------------------------------------------------------------
/doc/text/efuns/objects/move_object:
--------------------------------------------------------------------------------
1 | move_object - move current object to another environment
2 |
3 | void move_object( mixed dest );
4 |
5 | Move the current object into the object `dest'. dest should either be
6 | a filename or an object.
7 |
8 | Tim Hollebeek Beek@ZorkMUD, Lima Bean, IdeaExchange, and elsewhere
9 |
--------------------------------------------------------------------------------
/doc/text/efuns/objects/new:
--------------------------------------------------------------------------------
1 | new
2 |
3 | object x = new( string name, ...);
4 | class foo x = new(class foo);
5 |
6 | If given a string, it behaves like clone object. If given a class type,
7 | it creates a new instance of the class type.
8 |
9 | See also:
10 | clone_object,
11 | destruct,
12 | move_object
13 |
14 | Tim Hollebeek Beek@ZorkMUD, Lima Bean, IdeaExchange, and elsewhere
15 |
--------------------------------------------------------------------------------
/doc/text/efuns/parsing/index:
--------------------------------------------------------------------------------
1 | Parsing efuns
2 |
3 | Various string parsing efuns:
4 |
5 |
6 | * query_verb
7 |
8 |
9 | Tim Hollebeek Beek@ZorkMUD, Lima Bean, IdeaExchange, and elsewhere
10 |
--------------------------------------------------------------------------------
/doc/text/efuns/sockets/socket_error.h:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/quixadhal/fluffos/a845107aab294f1d6533813c7f996ace6404f908/doc/text/efuns/sockets/socket_error.h
--------------------------------------------------------------------------------
/doc/text/efuns/strings/capitalize:
--------------------------------------------------------------------------------
1 | capitalize - capitalize a string
2 |
3 | string capitalize( string str );
4 |
5 | Convert the first character in 'str' to upper case, and return the
6 | new string.
7 |
8 | See also:
9 | lower_case
10 |
11 | Tim Hollebeek Beek@ZorkMUD, Lima Bean, IdeaExchange, and elsewhere
12 |
--------------------------------------------------------------------------------
/doc/text/efuns/strings/crypt:
--------------------------------------------------------------------------------
1 | crypt - encrypt a string
2 |
3 | string crypt( string str, string seed );
4 |
5 | Crypt the string 'str' using the first two characters from 'seed' as
6 | a seed. If 'seed' is 0, then random seed is used.
7 |
8 | The result has the first two characters as the seed.
9 |
10 | Tim Hollebeek Beek@ZorkMUD, Lima Bean, IdeaExchange, and elsewhere
11 |
--------------------------------------------------------------------------------
/doc/text/efuns/strings/lower_case:
--------------------------------------------------------------------------------
1 | lower_case - return the lowercase version of a given string
2 |
3 | string lower_case( string str );
4 |
5 | Return the lowercase version of a given string (original string remains
6 | unchanged).
7 |
8 | See also:
9 | capitalize
10 |
11 | Tim Hollebeek Beek@ZorkMUD, Lima Bean, IdeaExchange, and elsewhere
12 |
--------------------------------------------------------------------------------
/doc/text/efuns/strings/pluralize:
--------------------------------------------------------------------------------
1 | pluralize - returns the plural of a given string
2 |
3 | string pluralize( string str );
4 |
5 | Returns the plural of 'str'. Handles most of the oddities of the English
6 | language.
7 |
8 | This efun is only available if PACKAGE_CONTRIB is defined.
9 |
10 | Tim Hollebeek Beek@ZorkMUD, Lima Bean, IdeaExchange, and elsewhere
11 |
--------------------------------------------------------------------------------
/doc/text/efuns/strings/set_bit:
--------------------------------------------------------------------------------
1 | next_bit - find the next bit set in a bitstring
2 |
3 | int next_bit( string str, int n );
4 |
5 | next_bit() returns the next bit set in a bitstring after 'n', or -1 if
6 | 'n' is the last set bit.
7 |
8 | See also:
9 | set_bit,
10 | test_bit
11 |
12 | Tim Hollebeek Beek@ZorkMUD, Lima Bean, IdeaExchange, and elsewhere
13 |
--------------------------------------------------------------------------------
/doc/text/efuns/strings/strlen:
--------------------------------------------------------------------------------
1 | strlen - returns the length of a string
2 |
3 | int strlen( string str );
4 |
5 | strlen() returns the number of characters in the string 'str'.
6 |
7 | See also:
8 | sizeof
9 |
10 | Tim Hollebeek Beek@ZorkMUD, Lima Bean, IdeaExchange, and elsewhere
11 |
--------------------------------------------------------------------------------
/doc/text/efuns/strings/test_bit:
--------------------------------------------------------------------------------
1 | set_bit - set a bit in a bitstring
2 |
3 | int test_bit( string str, int n );
4 |
5 | Returns 1 if bit 'n' was set in string 'str', and zero otherwise.
6 |
7 | See also:
8 | set_bit,
9 | clear_bit
10 |
11 | Tim Hollebeek Beek@ZorkMUD, Lima Bean, IdeaExchange, and elsewhere
12 |
--------------------------------------------------------------------------------
/doc/text/efuns/system/ctime:
--------------------------------------------------------------------------------
1 | ctime - return a time string
2 |
3 | string ctime( int clock );
4 |
5 | Gives a nice string with current date and time, with the argument 'clock'
6 | that is the number of seconds since 1970.
7 |
8 | See also:
9 | time,
10 | localtime,
11 | uptime
12 |
13 | Tim Hollebeek Beek@ZorkMUD, Lima Bean, IdeaExchange, and elsewhere
14 |
--------------------------------------------------------------------------------
/doc/text/efuns/system/deep_inherit_list:
--------------------------------------------------------------------------------
1 | deep_inherit_list - get a list of ancestors of an object
2 |
3 | string array deep_inherit_list( object obj );
4 |
5 | Returns an array of filenames of all objects inherited (directly and
6 | indirectly) by obj.
7 |
8 | See also:
9 | inherit_list,
10 | inherits
11 |
12 | Tim Hollebeek Beek@ZorkMUD, Lima Bean, IdeaExchange, and elsewhere
13 |
--------------------------------------------------------------------------------
/doc/text/efuns/system/error:
--------------------------------------------------------------------------------
1 | error - generate a run-time error
2 |
3 | void error( string err );
4 |
5 | A run-time error 'err' will be generated when error() is called. Execution
6 | of the current thread will halt, and the trace will be recorded to the
7 | debug log.
8 |
9 | See also:
10 | catch,
11 | throw,
12 | error_handler
13 |
14 | Tim Hollebeek Beek@ZorkMUD, Lima Bean, IdeaExchange, and elsewhere
15 |
--------------------------------------------------------------------------------
/doc/text/efuns/system/eval_cost:
--------------------------------------------------------------------------------
1 | eval_cost - returns the evaluation cost remaining
2 |
3 | void eval_cost()
4 |
5 | eval_cost() returns the number of instructions that can be executed
6 | before the driver decides it is in an infinite loop.
7 |
8 | See also:
9 | set_eval_limit,
10 | reset_eval_cost
11 |
12 | Tim Hollebeek Beek@ZorkMUD, Lima Bean, IdeaExchange, and elsewhere
13 |
--------------------------------------------------------------------------------
/doc/text/efuns/system/lpc_info:
--------------------------------------------------------------------------------
1 | lpc_info - return information about LPC->C compiled objects
2 |
3 | string lpc_info();
4 |
5 | lpc_info() returns a string describing which LPC->C programs are available,
6 | which are loaded, and which are out of date with respect to their source.
7 |
8 | Tim Hollebeek Beek@ZorkMUD, Lima Bean, IdeaExchange, and elsewhere
9 |
--------------------------------------------------------------------------------
/doc/text/efuns/system/max_eval_cost:
--------------------------------------------------------------------------------
1 | max_eval_cost - returns the maximum evaluation cost
2 |
3 | void max_eval_cost()
4 |
5 | max_eval_cost() returns the number of instructions that can be executed
6 | before the driver decides it is in an infinite loop.
7 |
8 | See also:
9 | set_eval_limit,
10 | reset_eval_cost
11 |
12 | Tim Hollebeek Beek@ZorkMUD, Lima Bean, IdeaExchange, and elsewhere
13 |
--------------------------------------------------------------------------------
/doc/text/efuns/system/program_info:
--------------------------------------------------------------------------------
1 | program_info - returns information about program memory usage
2 |
3 | string program_info();
4 |
5 | string program_info(object ob);
6 |
7 | Returns a summary of the memory usage of the program for a given object.
8 | If no program is specified, a summary of the memory usage of all loaded
9 | programs is returned.
10 |
11 | Tim Hollebeek Beek@ZorkMUD, Lima Bean, IdeaExchange, and elsewhere
12 |
--------------------------------------------------------------------------------
/doc/text/efuns/system/reset_eval_cost:
--------------------------------------------------------------------------------
1 | reset_eval_cost - resets the evaluation cost remaining
2 |
3 | void reset_eval_cost();
4 |
5 | reset_eval_cost() resets the evaluation cost remaining to the maximum
6 | evaluation cost.
7 |
8 | See also:
9 | eval_cost,
10 | set_eval_limit
11 |
12 | Tim Hollebeek Beek@ZorkMUD, Lima Bean, IdeaExchange, and elsewhere
13 |
--------------------------------------------------------------------------------
/doc/text/efuns/system/time:
--------------------------------------------------------------------------------
1 | debug_message - send a message to the driver's stdout
2 |
3 | void debug_message(string);
4 |
5 | The string argument is printed on the driver's stdout, as well as being added
6 | to the debug.log file.
7 |
8 | See also:
9 | ctime
10 |
11 | Tim Hollebeek Beek@ZorkMUD, Lima Bean, IdeaExchange, and elsewhere
12 |
--------------------------------------------------------------------------------
/doc/text/efuns/system/uptime:
--------------------------------------------------------------------------------
1 | uptime - return the number of seconds elapsed since the last driver reboot
2 |
3 | int uptime();
4 |
5 | This function returns the number of seconds since the last driver reboot.
6 |
7 | See also:
8 | time,
9 | ctime,
10 | localtime,
11 | time_expression
12 |
13 | Tim Hollebeek Beek@ZorkMUD, Lima Bean, IdeaExchange, and elsewhere
14 |
--------------------------------------------------------------------------------
/doc/text/index:
--------------------------------------------------------------------------------
1 | MudOS Documentation
2 |
3 |
4 | * Applies
5 | * Concepts
6 | * Driver
7 | * Efuns
8 | * LPC
9 |
10 |
11 | Tim Hollebeek Beek@ZorkMUD, Lima Bean, IdeaExchange, and elsewhere
12 |
--------------------------------------------------------------------------------
/doc/text/lpc/constructs/prototypes:
--------------------------------------------------------------------------------
1 | * The function prototype:
2 |
3 | The LPC function prototype is very similar to that of ANSI C. The
4 | function prototype allows for better type checking and can serve as
5 | a kind of 'forward' declaration.
6 |
7 | return_type function_name(arg1_type arg1, arg2_type arg2, ...);
8 |
--------------------------------------------------------------------------------
/src/Dependencies:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/quixadhal/fluffos/a845107aab294f1d6533813c7f996ace6404f908/src/Dependencies
--------------------------------------------------------------------------------
/src/Makefile:
--------------------------------------------------------------------------------
1 | all:
2 | @echo MudOS is currently configured to use 'GNUmakefile'. Edit 'build.MudOS'
3 | @echo if this is not what you want.
4 |
5 | .DEFAULT:
6 | @echo MudOS is currently configured to use 'GNUmakefile'. Edit 'build.MudOS'
7 | @echo if this is not what you want.
8 |
9 | nothing:
10 |
11 | which_makefile:
12 | echo MakeIsMake
13 |
--------------------------------------------------------------------------------
/src/Makefile.in.pre:
--------------------------------------------------------------------------------
1 | %define NORMAL
2 |
3 | %include "Makefile.master"
4 |
--------------------------------------------------------------------------------
/src/NMakefile.in.pre:
--------------------------------------------------------------------------------
1 | %define NMAKE
2 |
3 | %include "Makefile.master"
4 |
--------------------------------------------------------------------------------
/src/Version:
--------------------------------------------------------------------------------
1 | FluffOS 2.28.2
2 |
--------------------------------------------------------------------------------
/src/Win32/cp.bat:
--------------------------------------------------------------------------------
1 | @echo off
2 | :loop
3 | if "%1" == "-f" shift
4 | if "%1" == "." shift
5 | if "%1" == ".." shift
6 | if "%1x" == "x" goto end
7 | copy %1
8 | shift
9 | goto loop
10 | :end
11 |
--------------------------------------------------------------------------------
/src/Win32/mv.bat:
--------------------------------------------------------------------------------
1 | @echo off
2 | if "%1" == "-f" shift
3 | move %1 %2
4 |
--------------------------------------------------------------------------------
/src/Win32/rm.bat:
--------------------------------------------------------------------------------
1 | @echo off
2 | :loop
3 | if "%1x" == "x" goto end
4 | if "%1" == "-f" shift
5 | del %1 >nul
6 | shift
7 | goto loop
8 | :end
9 |
--------------------------------------------------------------------------------
/src/bsdmalloc.h:
--------------------------------------------------------------------------------
1 | #ifndef BSDMALLOC_H
2 | #define BSDMALLOC_H
3 |
4 | #ifdef BSDMALLOC
5 | void *bsdmalloc_malloc (size_t);
6 | void *bsdmalloc_calloc (size_t, size_t);
7 | void *bsdmalloc_realloc (void *, size_t);
8 | void bsdmalloc_free (void *);
9 | #ifdef DO_MSTATS
10 | void show_mstats (outbuffer_t *, char *);
11 | #endif
12 | #endif
13 |
14 | #endif
15 |
--------------------------------------------------------------------------------
/src/compat/simuls/apply.c:
--------------------------------------------------------------------------------
1 | /* Like evaluate(), but expand out an array of arguments. No longer necessary
2 | because of the ... syntax */
3 |
4 | mixed apply(mixed f, mixed *arr...) {
5 | if (sizeof(arr) && arrayp(arr[<1]))
6 | arr = arr[0..<2] + arr[<1];
7 |
8 | return evaluate(f, arr...);
9 | }
10 |
--------------------------------------------------------------------------------
/src/console.h:
--------------------------------------------------------------------------------
1 | /*
2 | * console.h -- definitions and prototypes for console.c
3 | *
4 | */
5 |
6 | #ifndef CONSOLE_H
7 | #define CONSOLE_H
8 |
9 | #include "options_incl.h"
10 |
11 | #ifdef HAS_CONSOLE
12 | extern void console_command(char *);
13 | #endif
14 |
15 | #endif
16 |
17 |
--------------------------------------------------------------------------------
/src/crc32.h:
--------------------------------------------------------------------------------
1 | #ifndef CRC32_H
2 | #define CRC32_H
3 |
4 | /*
5 | * crc32.c
6 | */
7 | UINT32 compute_crc32 (unsigned char *, int);
8 |
9 | #endif
10 |
--------------------------------------------------------------------------------
/src/dtrace_compile.c:
--------------------------------------------------------------------------------
1 | #include
2 | #include "std.h"
3 | int main(){
4 | #ifdef DTRACE
5 | #ifdef _LP64
6 | system("dtrace -G -64 -s fluffos.d obj/*.o > /dev/null");
7 | #else
8 | system("dtrace -G -32 -s fluffos.d obj/*.o > /dev/null");
9 | #endif
10 | printf("fluffos.o");
11 | #endif
12 | return 0;
13 | }
14 |
--------------------------------------------------------------------------------
/src/dumpstat.h:
--------------------------------------------------------------------------------
1 | #ifndef DUMPSTAT_H
2 | #define DUMPSTAT_H
3 |
4 | #include "lpc_incl.h"
5 |
6 | /*
7 | * dumpstat.c
8 | */
9 | int data_size (object_t *);
10 | void dumpstat (const char *);
11 |
12 | #endif
13 |
--------------------------------------------------------------------------------
/src/edit_source.h:
--------------------------------------------------------------------------------
1 | #ifndef EDIT_SOURCE_H
2 | #define EDIT_SOURCE_H
3 |
4 | extern FILE *yyin;
5 |
6 | #endif
7 |
--------------------------------------------------------------------------------
/src/efuns_incl.h:
--------------------------------------------------------------------------------
1 | #ifndef EFUNS_INCL_H
2 | #define EFUNS_INCL_H
3 |
4 | #include "efun_protos.h"
5 |
6 | #endif
7 |
--------------------------------------------------------------------------------
/src/eval.h:
--------------------------------------------------------------------------------
1 | #ifndef FLUFF_EVAL_H
2 | #define FLUFF_EVAL_H
3 | extern int outoftime;
4 | extern LPC_INT max_cost;
5 | void set_eval(LPC_INT time);
6 | LPC_INT get_eval();
7 | #endif
8 |
--------------------------------------------------------------------------------
/src/fluffos.d:
--------------------------------------------------------------------------------
1 | provider fluffos {
2 | probe lpc__entry(string, string, string);
3 | probe lpc__return(string, string, string);
4 | probe error(string);
5 | };
6 |
7 |
--------------------------------------------------------------------------------
/src/gcmalloc.c:
--------------------------------------------------------------------------------
1 | #define IN_MALLOC_WRAPPER
2 | #include
3 |
4 | void malloc_init() {
5 | GC_INIT();
6 | }
7 | #ifdef DO_MSTATS
8 | void show_mstats (outbuffer_t * ob, char * s) {
9 | outbuf_add(ob, "No malloc statistics available with SYSMALLOC\n");
10 | }
11 | #endif
12 |
--------------------------------------------------------------------------------
/src/hash.c:
--------------------------------------------------------------------------------
1 | #define EDIT_SOURCE
2 | #define NO_SOCKETS
3 | #define NO_OPCODES
4 |
5 | #include "std.h"
6 | #include "hash.h"
7 |
8 | unsigned int whashstr (const char * s)
9 | {
10 | int i = 0;
11 | unsigned long __h = 0;
12 | for ( ; *s && i++ <100 ; ++s)
13 | __h = 37 * __h + *s;
14 | return __h;
15 | }
16 |
--------------------------------------------------------------------------------
/src/hash.h:
--------------------------------------------------------------------------------
1 | #ifndef HASH_H
2 | #define HASH_H
3 |
4 | /*
5 | * hash.c
6 | */
7 | unsigned int whashstr (const char *);
8 |
9 | #endif
10 |
--------------------------------------------------------------------------------
/src/include/localtime.h:
--------------------------------------------------------------------------------
1 |
2 | /*
3 | * Definitions for localtime() efun
4 | */
5 | #define LT_SEC 0
6 | #define LT_MIN 1
7 | #define LT_HOUR 2
8 | #define LT_MDAY 3
9 | #define LT_MON 4
10 | #define LT_YEAR 5
11 | #define LT_WDAY 6
12 | #define LT_YDAY 7
13 | #define LT_GMTOFF 8
14 | #define LT_ZONE 9
15 | #define LT_ISDST 10
16 |
--------------------------------------------------------------------------------
/src/include/parser_error.h:
--------------------------------------------------------------------------------
1 | #ifndef PARSER_ERROR_H
2 | #define PARSER_ERROR_H
3 |
4 | #define ERR_IS_NOT 1
5 | #define ERR_NOT_LIVING 2
6 | #define ERR_NOT_ACCESSIBLE 3
7 | #define ERR_AMBIG 4
8 | #define ERR_ORDINAL 5
9 | #define ERR_ALLOCATED 6
10 | #define ERR_THERE_IS_NO 7
11 | #define ERR_BAD_MULTIPLE 8
12 | #define ERR_MANY_PATHS 9
13 |
14 | #endif
15 |
--------------------------------------------------------------------------------
/src/include/type.h:
--------------------------------------------------------------------------------
1 | /* /include/type.h */
2 |
3 | #ifndef _TYPE_H
4 | #define _TYPE_H
5 |
6 | #define INT "int"
7 | #define STRING "string"
8 | #define ARRAY "array"
9 | #define OBJECT "object"
10 | #define MAPPING "mapping"
11 | #define FUNCTION "function"
12 | #define FLOAT "float"
13 | #define BUFFER "buffer"
14 | #define CLASS "class"
15 | #endif
16 |
--------------------------------------------------------------------------------
/src/obj/.gitignore:
--------------------------------------------------------------------------------
1 | *.o
2 |
--------------------------------------------------------------------------------
/src/packages/.gitignore:
--------------------------------------------------------------------------------
1 | GNUmakefile
2 | Makefile
3 | packages
4 | packages.a
5 |
--------------------------------------------------------------------------------
/src/packages/GNUmakefile.pre:
--------------------------------------------------------------------------------
1 | %define GNU
2 |
3 | %include "packages/Makefile.master"
4 |
--------------------------------------------------------------------------------
/src/packages/Makefile.pre:
--------------------------------------------------------------------------------
1 | %define NORMAL
2 |
3 | %include "packages/Makefile.master"
4 |
--------------------------------------------------------------------------------
/src/packages/README:
--------------------------------------------------------------------------------
1 | In order to add a package, do the following:
2 |
3 | (1) Pick a name for your package (we will use 'foo' here)
4 |
5 | (2) Put the prototypes for the efuns in foo_spec.c
6 |
7 | (3) implement the efuns in foo.c
8 |
9 | (4) add #define PACKAGE_FOO to options.h or local_options
10 |
11 | (5) do a full recompile (make remake)
12 |
13 |
--------------------------------------------------------------------------------
/src/packages/async.h:
--------------------------------------------------------------------------------
1 | #ifndef ASYNC_H_
2 | #define ASYNC_H_
3 |
4 | void check_reqs();
5 | void complete_all_asyncio();
6 | #endif /*ASYNC_H_*/
7 |
--------------------------------------------------------------------------------
/src/packages/async_spec.c:
--------------------------------------------------------------------------------
1 | #include "spec.h"
2 |
3 | void async_read(string, function);
4 | void async_write(string, string, int, function);
5 | #ifdef __linux__
6 | void async_getdir(string, function);
7 | #endif
8 | #ifdef PACKAGE_DB
9 | void async_db_exec(int, string, function);
10 | #endif
11 |
--------------------------------------------------------------------------------
/src/packages/compress_spec.c:
--------------------------------------------------------------------------------
1 | /* Compression efun specifications.
2 | * Started Wed Mar 21 01:52:25 PST 2001
3 | * by David Bennett (ddt@discworld.imaginary.com)
4 | */
5 |
6 | int compress_file(string, string|void);
7 | int uncompress_file(string, string|void);
8 |
9 | buffer compress(string|buffer);
10 | buffer uncompress(string|buffer);
11 |
--------------------------------------------------------------------------------
/src/packages/crypto_spec.c:
--------------------------------------------------------------------------------
1 | #include "spec.h"
2 |
3 | string hash(string, string);
4 |
--------------------------------------------------------------------------------
/src/packages/db_spec.c:
--------------------------------------------------------------------------------
1 | #include "spec.h"
2 |
3 | int db_close(int);
4 | int db_commit(int);
5 | int db_connect(string, string, string|void, int|void);
6 | mixed db_exec(int, string);
7 | mixed *db_fetch(int, int);
8 | int db_rollback(int);
9 | string db_status(void);
10 |
--------------------------------------------------------------------------------
/src/packages/debug.h:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/quixadhal/fluffos/a845107aab294f1d6533813c7f996ace6404f908/src/packages/debug.h
--------------------------------------------------------------------------------
/src/packages/debug_spec.c:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/quixadhal/fluffos/a845107aab294f1d6533813c7f996ace6404f908/src/packages/debug_spec.c
--------------------------------------------------------------------------------
/src/packages/dslib.c:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/quixadhal/fluffos/a845107aab294f1d6533813c7f996ace6404f908/src/packages/dslib.c
--------------------------------------------------------------------------------
/src/packages/dslib_spec.c:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/quixadhal/fluffos/a845107aab294f1d6533813c7f996ace6404f908/src/packages/dslib_spec.c
--------------------------------------------------------------------------------
/src/packages/external_spec.c:
--------------------------------------------------------------------------------
1 | #include "spec.h"
2 |
3 | int external_start(int, string | string *, string | function, string | function, string | function | void);
4 |
--------------------------------------------------------------------------------
/src/packages/mudlib_stats_spec.c:
--------------------------------------------------------------------------------
1 | #include "spec.h"
2 |
3 | mapping domain_stats(void | string);
4 | void set_author(string);
5 | mapping author_stats(void | string);
6 |
--------------------------------------------------------------------------------
/src/packages/parser_spec.c:
--------------------------------------------------------------------------------
1 | #include "spec.h"
2 |
3 | void parse_init();
4 | void parse_refresh();
5 | mixed parse_sentence(string, void | int, void | object *, void | mapping);
6 | void parse_add_rule(string, string);
7 | void parse_remove(string);
8 | void parse_add_synonym(string, string, void | string);
9 | string parse_dump();
10 | mixed parse_my_rules(object, string, void | int);
11 |
--------------------------------------------------------------------------------
/src/packages/pcre_spec.c:
--------------------------------------------------------------------------------
1 | #include "spec.h"
2 |
3 | string pcre_version(void);
4 | mixed pcre_match(string | string *, string, void | int);
5 | mixed *pcre_assoc(string, string *, mixed *, mixed | void);
6 | string *pcre_extract(string, string);
7 | string pcre_replace(string, string, string *);
8 | string pcre_replace_callback(string, string, string | function, ...);
9 | mapping pcre_cache(void);
10 |
--------------------------------------------------------------------------------
/src/packages/readme:
--------------------------------------------------------------------------------
1 | In order to add a package, do the following:
2 |
3 | (1) Pick a name for your package (we will use 'foo' here)
4 |
5 | (2) Put the prototypes for the efuns in foo_spec.c
6 |
7 | (3) implement the efuns in foo.c
8 |
9 | (4) add #define PACKAGE_FOO to options.h or local_options
10 |
11 | (5) do a full recompile (make remake)
12 |
13 |
--------------------------------------------------------------------------------
/src/packages/sha1_spec.c:
--------------------------------------------------------------------------------
1 | #include "spec.h"
2 |
3 | string sha1(string|buffer);
4 |
--------------------------------------------------------------------------------
/src/packages/uids_spec.c:
--------------------------------------------------------------------------------
1 | #include "spec.h"
2 |
3 | int export_uid(object);
4 | string geteuid(function | object default:F__THIS_OBJECT);
5 | string getuid(object default:F__THIS_OBJECT);
6 | int seteuid(string | int);
7 |
--------------------------------------------------------------------------------
/src/parse.h:
--------------------------------------------------------------------------------
1 | #ifndef PARSE_H
2 | #define PARSE_H
3 |
4 | #include "lpc_incl.h"
5 |
6 | int parse (const char *, svalue_t *, const char *, svalue_t *, int);
7 | char *process_string (char *);
8 | svalue_t *process_value (char *);
9 | char *break_string (char *, int, svalue_t *);
10 |
11 | #endif
12 |
--------------------------------------------------------------------------------
/src/patchlevel.h:
--------------------------------------------------------------------------------
1 | #define PATCH_LEVEL "v2.28.3"
2 |
--------------------------------------------------------------------------------
/src/plainwrapper.c:
--------------------------------------------------------------------------------
1 | #ifdef PEDANTIC
2 | int I_really_could_do_without_warnings_about_ANSI_C_not_allowing_files_with_no_definitions;
3 | #endif
4 |
--------------------------------------------------------------------------------
/src/posix_timers.h:
--------------------------------------------------------------------------------
1 | #ifndef POSIX_TIMERS_H
2 | #define POSIX_TIMERS_H
3 | #ifdef SIGNAL_FUNC_TAKES_INT
4 | void sigalrm_handler (int, siginfo_t *, void *);
5 | #else
6 | void sigalrm_handler (void);
7 | #endif
8 | #ifdef POSIX_TIMERS
9 | void init_posix_timers(void);
10 | void posix_eval_timer_set(int micros);
11 | int posix_eval_timer_get(void);
12 | #endif
13 |
14 | #endif
15 |
--------------------------------------------------------------------------------
/src/preprocess.h:
--------------------------------------------------------------------------------
1 | #ifndef PREPROCESS_H
2 | #define PREPROCESS_H
3 |
4 | defn_t *lookup_define (const char *);
5 |
6 | #endif
7 |
--------------------------------------------------------------------------------
/src/qsort.h:
--------------------------------------------------------------------------------
1 | #ifndef QSORT_H
2 | #define QSORT_H
3 |
4 | /*
5 | * qsort.c
6 | */
7 | void quickSort (void *, int, int, int (*) (void *, void *));
8 |
9 | #endif
10 |
--------------------------------------------------------------------------------
/src/rc.h:
--------------------------------------------------------------------------------
1 | #ifndef RC_H
2 | #define RC_H
3 |
4 | #include "lpc_incl.h"
5 |
6 | /*
7 | * rc.c
8 | */
9 |
10 | void set_defaults (char *);
11 | int get_config_int (int);
12 | char *get_config_str (int);
13 | int get_config_item (svalue_t *, svalue_t *);
14 |
15 | #endif
16 |
--------------------------------------------------------------------------------
/src/reclaim.h:
--------------------------------------------------------------------------------
1 | #ifndef RECLAIM_H
2 | #define RECLAIM_H
3 |
4 | /*
5 | * reclaim.c
6 | */
7 | int reclaim_objects (void);
8 |
9 | #endif
10 |
--------------------------------------------------------------------------------
/src/simul_efun.h:
--------------------------------------------------------------------------------
1 | #ifndef SIMUL_EFUN_H
2 | #define SIMUL_EFUN_H
3 |
4 | #include "lpc_incl.h"
5 |
6 | /*
7 | * simul_efun.c
8 | */
9 |
10 | extern object_t *simul_efun_ob;
11 | extern function_lookup_info_t *simuls;
12 |
13 | void init_simul_efun (char *);
14 | void set_simul_efun (object_t *);
15 |
16 | #ifdef DEBUGMALLOC_EXTENSIONS
17 | void mark_simuls (void);
18 | #endif
19 |
20 | #endif
21 |
--------------------------------------------------------------------------------
/src/smalloc.h:
--------------------------------------------------------------------------------
1 | #ifndef SMALLOC_H
2 | #define SMALLOC_H
3 |
4 | #ifdef SMALLOC
5 | void * CDECL smalloc_malloc (size_t);
6 | void * CDECL smalloc_realloc (void *, size_t);
7 | void * CDECL smalloc_calloc (size_t, size_t);
8 | void CDECL smalloc_free (void *);
9 | #ifdef DO_MSTATS
10 | void show_mstats (outbuffer_t *, char *);
11 | #endif
12 | #endif
13 |
14 | #endif
15 |
--------------------------------------------------------------------------------
/src/socket_ctrl.h:
--------------------------------------------------------------------------------
1 | #ifndef SOCKET_CTRL_H
2 | #define SOCKET_CTRL_H
3 |
4 | /*
5 | * socket_ctrl.c
6 | */
7 | int set_socket_nonblocking (int, int);
8 | int set_socket_owner (int, int);
9 | int set_socket_async (int, int);
10 |
11 | #ifdef WIN32
12 | void SocketPerror (char *, char *);
13 | void CDECL cleanup_sockets (void);
14 | #endif
15 |
16 | #endif
17 |
--------------------------------------------------------------------------------
/src/socket_err.h:
--------------------------------------------------------------------------------
1 | #ifndef SOCKET_ERR_H
2 | #define SOCKET_ERR_H
3 | /*
4 | * socket_err.h
5 | */
6 | extern const char *error_strings[];
7 |
8 | #endif
9 |
--------------------------------------------------------------------------------
/src/spec.h:
--------------------------------------------------------------------------------
1 | /* This is the correct file to include in efun specification files; e.g.
2 | func_spec.c and packages/anything_spec.c */
3 |
4 | #define _FUNC_SPEC_
5 | #include "std.h"
6 |
--------------------------------------------------------------------------------
/src/sprintf.h:
--------------------------------------------------------------------------------
1 | #ifndef SPRINTF_H
2 | #define SPRINTF_H
3 |
4 | #include "lpc_incl.h"
5 |
6 | void svalue_to_string (svalue_t *, outbuffer_t *, int, int, int);
7 | char *string_print_formatted (const char *, int, svalue_t *);
8 |
9 | #endif
10 |
--------------------------------------------------------------------------------
/src/sysmalloc.c:
--------------------------------------------------------------------------------
1 | #define IN_MALLOC_WRAPPER
2 | #define NO_OPCODES
3 | #include "std.h"
4 | #include "lpc_incl.h"
5 | #include "simulate.h"
6 | #include "comm.h"
7 |
8 | #ifdef DO_MSTATS
9 | void show_mstats (outbuffer_t * ob, char * s) {
10 | outbuf_add(ob, "No malloc statistics available with SYSMALLOC\n");
11 | }
12 | #endif
13 |
14 |
--------------------------------------------------------------------------------
/src/testsuite/.edrc:
--------------------------------------------------------------------------------
1 | 148
2 |
--------------------------------------------------------------------------------
/src/testsuite/clone/README:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/quixadhal/fluffos/a845107aab294f1d6533813c7f996ace6404f908/src/testsuite/clone/README
--------------------------------------------------------------------------------
/src/testsuite/clone/readme:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/quixadhal/fluffos/a845107aab294f1d6533813c7f996ace6404f908/src/testsuite/clone/readme
--------------------------------------------------------------------------------
/src/testsuite/command/README:
--------------------------------------------------------------------------------
1 | This directory is to contain the objects implementing the commands that
2 | interactives can use (movement, building, communication, etc).
3 |
--------------------------------------------------------------------------------
/src/testsuite/command/ed.c:
--------------------------------------------------------------------------------
1 | #include
2 |
3 | int
4 | main(string file)
5 | {
6 | // need to call resolve_path() and query_cwd()
7 | #ifdef __OLD_ED__
8 | ed(file);
9 | #else
10 | this_player()->start_ed(file);
11 | #endif
12 | return 1;
13 | }
14 |
--------------------------------------------------------------------------------
/src/testsuite/command/eval.c:
--------------------------------------------------------------------------------
1 | int
2 | main(string arg)
3 | {
4 | /* clean up first */
5 | if (file_size("/tmp_eval_file.c") != -1)
6 | rm ("/tmp_eval_file.c");
7 | if (find_object("/tmp_eval_file"))
8 | destruct(find_object("/tmp_eval_file"));
9 |
10 | write_file("/tmp_eval_file.c","mixed eval() { "+arg+"; }\n");
11 | printf("Result = %O\n", "/tmp_eval_file"->eval());
12 | return 1;
13 | }
14 |
--------------------------------------------------------------------------------
/src/testsuite/command/quit.c:
--------------------------------------------------------------------------------
1 | #include
2 |
3 | #ifdef __NO_ENVIRONMENT__
4 | #define say(x) shout(x)
5 | #endif
6 |
7 | int
8 | main(string arg)
9 | {
10 | write("Bye.\n");
11 | say((string)previous_object()->query_name()
12 | + " leaves this reality.\n");
13 | previous_object()->remove();
14 | return 1;
15 | }
16 |
--------------------------------------------------------------------------------
/src/testsuite/command/readme:
--------------------------------------------------------------------------------
1 | This directory is to contain the objects implementing the commands that
2 | interactives can use (movement, building, communication, etc).
3 |
--------------------------------------------------------------------------------
/src/testsuite/command/rm.c:
--------------------------------------------------------------------------------
1 | #include
2 |
3 | int
4 | main(string file)
5 | {
6 | // need to call resolve_path() and query_cwd()
7 | rm(file);
8 | return 1;
9 | }
10 |
--------------------------------------------------------------------------------
/src/testsuite/command/say.c:
--------------------------------------------------------------------------------
1 | #include
2 |
3 | #ifdef __NO_ENVIRONMENT__
4 | #define say(x) shout(x)
5 | #endif
6 |
7 | int main(string arg)
8 | {
9 | say((string)previous_object()->query_name()
10 | + " says: " + arg + "\n");
11 | return 1;
12 | }
13 |
--------------------------------------------------------------------------------
/src/testsuite/command/shutdown.c:
--------------------------------------------------------------------------------
1 | #include
2 |
3 | int
4 | main(string arg)
5 | {
6 | shutdown(0);
7 | return 1;
8 | }
9 |
--------------------------------------------------------------------------------
/src/testsuite/crasher/1:
--------------------------------------------------------------------------------
1 | calling send_gmcp with ({ /* sizeof() == 1 */
2 | "^^^^^^"
3 | })
4 |
5 |
--------------------------------------------------------------------------------
/src/testsuite/crasher/11:
--------------------------------------------------------------------------------
1 | calling localtime with ({ /* sizeof() == 1 */
2 | 9223372036854775807
3 | })
4 |
--------------------------------------------------------------------------------
/src/testsuite/crasher/12:
--------------------------------------------------------------------------------
1 | calling unique_mapping with ({ /* sizeof() == 2 */
2 | ({ /* sizeof() == 1 */
3 | ([ ])
4 | }),
5 | "_"
6 | })
7 |
--------------------------------------------------------------------------------
/src/testsuite/crasher/13:
--------------------------------------------------------------------------------
1 | calling terminal_colour with ({ /* sizeof() == 4 */
2 | " - - - - ",
3 | ([ ]),
4 | (: shout :),
5 | -5050211
6 | })
7 |
--------------------------------------------------------------------------------
/src/testsuite/crasher/14:
--------------------------------------------------------------------------------
1 | calling save_object with ({ /* sizeof() == 2 */
2 | 32,
3 | 40
4 | })
5 |
--------------------------------------------------------------------------------
/src/testsuite/crasher/16:
--------------------------------------------------------------------------------
1 | calling remove_get_char with ({ /* sizeof() == 1 */
2 | /clone/login#2
3 | })
4 |
--------------------------------------------------------------------------------
/src/testsuite/crasher/17:
--------------------------------------------------------------------------------
1 | calling zonetime with ({
2 | string: ""
3 | int: 9223372036854775807
4 | })
5 |
--------------------------------------------------------------------------------
/src/testsuite/crasher/2:
--------------------------------------------------------------------------------
1 | calling clear_debug_level with ({ /* sizeof() == 1 */
2 | "%d %q %T"
3 | })
4 |
--------------------------------------------------------------------------------
/src/testsuite/crasher/4:
--------------------------------------------------------------------------------
1 | calling unique_mapping with ({ /* sizeof() == 2 */
2 | ({ /* sizeof() == 1 */
3 | (: () :)
4 | }),
5 | "#^# #^#"
6 | })
7 |
--------------------------------------------------------------------------------
/src/testsuite/crasher/5:
--------------------------------------------------------------------------------
1 | calling zonetime with ({ /* sizeof() == 2 */
2 | " ",
3 | -9223372036854775807
4 | })
5 |
--------------------------------------------------------------------------------
/src/testsuite/crasher/7:
--------------------------------------------------------------------------------
1 | calling save_object with ({ /* sizeof() == 2 */
2 | -40,
3 | -32
4 | })
5 |
6 |
--------------------------------------------------------------------------------
/src/testsuite/crasher/8:
--------------------------------------------------------------------------------
1 | calling remove_get_char with ({ /* sizeof() == 1 */
2 | /clone/login#2
3 | })
4 |
--------------------------------------------------------------------------------
/src/testsuite/crasher/9:
--------------------------------------------------------------------------------
1 | calling ed with ({ /* sizeof() == 4 */
2 | -5050211,
3 | " ^",
4 | "°°°°°°°°°°°°°°°°°°°°°",
5 | 1
6 | })
7 |
8 |
--------------------------------------------------------------------------------
/src/testsuite/data/README:
--------------------------------------------------------------------------------
1 | This directory is to contain the .o files created by the save_object() efun.
2 |
--------------------------------------------------------------------------------
/src/testsuite/data/readme:
--------------------------------------------------------------------------------
1 | This directory is to contain the .o files created by the save_object() efun.
2 |
--------------------------------------------------------------------------------
/src/testsuite/data/sha1/README:
--------------------------------------------------------------------------------
1 | The files in this directory came from:
2 |
3 | http://www.nsrl.nist.gov/testdata/NSRLvectors.zip
4 |
--------------------------------------------------------------------------------
/src/testsuite/etc/motd:
--------------------------------------------------------------------------------
1 | The only commands in this little mudlib are:
2 |
3 | dest, update, ed, eval, efun, rm, say, who, quit, and shutdown.
4 |
5 | All of update, dest, ed, and rm require full pathnames as arguments.
6 |
7 | More commands:
8 | tests : run a series test to validate driver function.
9 | speed : run a benchmark.
10 | crasher: calling efun with random argument, attempt to crash driver.
11 |
12 | Have fun.
13 |
--------------------------------------------------------------------------------
/src/testsuite/include/README:
--------------------------------------------------------------------------------
1 | This directory contains files that are included via the #include
2 | preprocessor directive.
3 |
--------------------------------------------------------------------------------
/src/testsuite/include/command.h:
--------------------------------------------------------------------------------
1 | #include
2 |
3 | inherit CLEAN_UP;
4 |
--------------------------------------------------------------------------------
/src/testsuite/include/config.h:
--------------------------------------------------------------------------------
1 | /*
2 | * if "global include file" is specified in the config file, this header
3 | * file is automatically included by all objects; otherwise, you have to
4 | * #include it manually
5 | */
6 | #ifndef __CONFIG_H__
7 | #define __CONFIG_H__
8 |
9 | #endif
10 |
--------------------------------------------------------------------------------
/src/testsuite/include/readme:
--------------------------------------------------------------------------------
1 | This directory contains files that are included via the #include
2 | preprocessor directive.
3 |
--------------------------------------------------------------------------------
/src/testsuite/inherit/README:
--------------------------------------------------------------------------------
1 | This directory contains files that are typically inherited (rather than
2 | cloned).
3 |
--------------------------------------------------------------------------------
/src/testsuite/inherit/clean_up.c:
--------------------------------------------------------------------------------
1 |
2 | int
3 | clean_up(int inh)
4 | {
5 | destruct(this_object());
6 | return 0;
7 | }
8 |
--------------------------------------------------------------------------------
/src/testsuite/inherit/readme:
--------------------------------------------------------------------------------
1 | This directory contains files that are typically inherited (rather than
2 | cloned).
3 |
--------------------------------------------------------------------------------
/src/testsuite/inherit/tests.c:
--------------------------------------------------------------------------------
1 | string test_desc;
2 |
3 | void
4 | describe_test(string desc)
5 | {
6 | test_desc = desc;
7 | }
8 |
9 | string
10 | query_test_info()
11 | {
12 | return test_desc;
13 | }
14 |
--------------------------------------------------------------------------------
/src/testsuite/log/README:
--------------------------------------------------------------------------------
1 | This directory contains logfiles produced by the mudlib and the driver.
2 |
--------------------------------------------------------------------------------
/src/testsuite/log/readme:
--------------------------------------------------------------------------------
1 | This directory contains logfiles produced by the mudlib and the driver.
2 |
--------------------------------------------------------------------------------
/src/testsuite/single/README:
--------------------------------------------------------------------------------
1 | This directory is for objects that are intended to only have a _single_
2 | instance (no clones) yet are not typically inherited. This sort of object
3 | includes what are sometimes known as daemons.
4 |
--------------------------------------------------------------------------------
/src/testsuite/single/inh.c:
--------------------------------------------------------------------------------
1 | /* this file is used by commands/speed.c */
2 | void ifun() {
3 | }
4 |
--------------------------------------------------------------------------------
/src/testsuite/single/readme:
--------------------------------------------------------------------------------
1 | This directory is for objects that are intended to only have a _single_
2 | instance (no clones) yet are not typically inherited. This sort of object
3 | includes what are sometimes known as daemons.
4 |
--------------------------------------------------------------------------------
/src/testsuite/single/tests/compiler/at_block.c:
--------------------------------------------------------------------------------
1 | void do_tests() {
2 | mixed *a;
3 | string s = @END
4 | xxx
5 | yyy
6 | END;
7 | ASSERT( s == "xxx\nyyy\n");
8 | a = @@END
9 | xxx
10 | yyy
11 | END;
12 | ASSERT(sizeof(a) == 2);
13 | }
14 |
--------------------------------------------------------------------------------
/src/testsuite/single/tests/compiler/fail/arr_index.c:
--------------------------------------------------------------------------------
1 | void foo {
2 | ({ })[1];
3 | }
4 |
--------------------------------------------------------------------------------
/src/testsuite/single/tests/compiler/fail/bad_break.c:
--------------------------------------------------------------------------------
1 | void foo() {
2 | break;
3 | }
4 |
--------------------------------------------------------------------------------
/src/testsuite/single/tests/compiler/fail/bad_continue.c:
--------------------------------------------------------------------------------
1 | void foo() {
2 | continue;
3 | }
4 |
--------------------------------------------------------------------------------
/src/testsuite/single/tests/compiler/fail/bad_for_init.c:
--------------------------------------------------------------------------------
1 | void foo() {
2 | for (int x += 1; ; ) ;
3 | }
4 |
5 |
--------------------------------------------------------------------------------
/src/testsuite/single/tests/compiler/fail/bad_foreach.c:
--------------------------------------------------------------------------------
1 | void foo() {
2 | foreach (x in ({})) ;
3 | }
4 |
--------------------------------------------------------------------------------
/src/testsuite/single/tests/compiler/fail/bad_init.c:
--------------------------------------------------------------------------------
1 | int x += 1;
2 |
--------------------------------------------------------------------------------
/src/testsuite/single/tests/compiler/fail/bad_local_init.c:
--------------------------------------------------------------------------------
1 | void foo() {
2 | int x += 1;
3 | }
4 |
--------------------------------------------------------------------------------
/src/testsuite/single/tests/compiler/fail/bad_local_init2.c:
--------------------------------------------------------------------------------
1 | TYPETEST
2 |
3 | void foo() {
4 | int x = "hi";
5 | }
6 |
--------------------------------------------------------------------------------
/src/testsuite/single/tests/compiler/fail/bad_param.c:
--------------------------------------------------------------------------------
1 | void foo() {
2 | (: $-1 :);
3 | }
4 |
--------------------------------------------------------------------------------
/src/testsuite/single/tests/compiler/fail/bad_param2.c:
--------------------------------------------------------------------------------
1 | void foo() {
2 | (: $1000 :);
3 | }
4 |
--------------------------------------------------------------------------------
/src/testsuite/single/tests/compiler/fail/bad_return.c:
--------------------------------------------------------------------------------
1 | TYPETEST
2 |
3 | void foo() {
4 | return 1;
5 | }
6 |
--------------------------------------------------------------------------------
/src/testsuite/single/tests/compiler/fail/bad_return2.c:
--------------------------------------------------------------------------------
1 | TYPETEST
2 |
3 | int foo() {
4 | return "hi";
5 | }
6 |
--------------------------------------------------------------------------------
/src/testsuite/single/tests/compiler/fail/bad_type_init.c:
--------------------------------------------------------------------------------
1 | TYPETEST
2 |
3 | int x = "hi";
4 |
--------------------------------------------------------------------------------
/src/testsuite/single/tests/compiler/fail/class_redef.c:
--------------------------------------------------------------------------------
1 | class foo {
2 | int x;
3 | }
4 |
5 | class foo {
6 | string y;
7 | }
8 |
--------------------------------------------------------------------------------
/src/testsuite/single/tests/compiler/fail/div_zero.c:
--------------------------------------------------------------------------------
1 | void foo(mixed x) {
2 | switch(x) {
3 | case 1 / 0:
4 | }
5 | }
6 |
--------------------------------------------------------------------------------
/src/testsuite/single/tests/compiler/fail/div_zero3.c:
--------------------------------------------------------------------------------
1 | int foo() {
2 | return 1/0.0;
3 | }
4 |
--------------------------------------------------------------------------------
/src/testsuite/single/tests/compiler/fail/eof_in_comment.c:
--------------------------------------------------------------------------------
1 | /*
2 |
--------------------------------------------------------------------------------
/src/testsuite/single/tests/compiler/fail/eof_in_string.c:
--------------------------------------------------------------------------------
1 | void create() {
2 | "
3 | }
4 |
--------------------------------------------------------------------------------
/src/testsuite/single/tests/compiler/fail/local_redef.c:
--------------------------------------------------------------------------------
1 | void foo(int x) {
2 | int x;
3 | }
4 |
--------------------------------------------------------------------------------
/src/testsuite/single/tests/compiler/fail/local_redef2.c:
--------------------------------------------------------------------------------
1 | void foo() {
2 | int x;
3 | {
4 | int x;
5 | }
6 | }
7 |
--------------------------------------------------------------------------------
/src/testsuite/single/tests/compiler/fail/lvar_func.c:
--------------------------------------------------------------------------------
1 | void foo() {
2 | int x;
3 | (: x :);
4 | }
5 |
--------------------------------------------------------------------------------
/src/testsuite/single/tests/compiler/fail/lvar_func2.c:
--------------------------------------------------------------------------------
1 | void foo() {
2 | int x;
3 | (: x + 1 :);
4 | }
5 |
--------------------------------------------------------------------------------
/src/testsuite/single/tests/compiler/fail/missing_endif.c:
--------------------------------------------------------------------------------
1 | #if 1
2 |
--------------------------------------------------------------------------------
/src/testsuite/single/tests/compiler/fail/missing_type.c:
--------------------------------------------------------------------------------
1 | #pragma strict_types
2 |
3 | foo;
4 |
--------------------------------------------------------------------------------
/src/testsuite/single/tests/compiler/fail/mixed_case.c:
--------------------------------------------------------------------------------
1 | void foo(mixed x) {
2 | switch (x) {
3 | case 1:
4 | case "hi":
5 | }
6 | }
7 |
--------------------------------------------------------------------------------
/src/testsuite/single/tests/compiler/fail/mod_zero.c:
--------------------------------------------------------------------------------
1 | void foo(mixed x) {
2 | switch(x) {
3 | case 1 % 0:
4 | }
5 | }
6 |
--------------------------------------------------------------------------------
/src/testsuite/single/tests/compiler/fail/no_member.c:
--------------------------------------------------------------------------------
1 | class foo {
2 | int x;
3 | }
4 |
5 | void foo() {
6 | foo y;
7 | y->z;
8 | }
9 |
--------------------------------------------------------------------------------
/src/testsuite/single/tests/compiler/fail/no_ret_type.c:
--------------------------------------------------------------------------------
1 | #pragma strict_types
2 |
3 | foo() {
4 | }
5 |
--------------------------------------------------------------------------------
/src/testsuite/single/tests/compiler/fail/no_such_class.c:
--------------------------------------------------------------------------------
1 | void foo() {
2 | new(class foo);
3 | }
4 |
--------------------------------------------------------------------------------
/src/testsuite/single/tests/compiler/fail/predef.c:
--------------------------------------------------------------------------------
1 | #undef __VERSION__
2 |
--------------------------------------------------------------------------------
/src/testsuite/single/tests/compiler/fail/redef_function.c:
--------------------------------------------------------------------------------
1 | void foo() {
2 | }
3 |
4 | void foo() {
5 | }
6 |
--------------------------------------------------------------------------------
/src/testsuite/single/tests/compiler/fail/static_local.c:
--------------------------------------------------------------------------------
1 | void main() {
2 | static int x = 5;
3 | }
4 |
--------------------------------------------------------------------------------
/src/testsuite/single/tests/compiler/fail/string_case.c:
--------------------------------------------------------------------------------
1 | void foo() {
2 | switch ("hi") {
3 | case "foo".."bar":
4 | }
5 | }
6 |
--------------------------------------------------------------------------------
/src/testsuite/single/tests/compiler/fail/two_default.c:
--------------------------------------------------------------------------------
1 | void foo() {
2 | switch (1) {
3 | default:
4 | default:
5 | }
6 | }
7 |
--------------------------------------------------------------------------------
/src/testsuite/single/tests/compiler/fail/undef_class.c:
--------------------------------------------------------------------------------
1 | class foo x;
2 |
--------------------------------------------------------------------------------
/src/testsuite/single/tests/compiler/fail/var_to_nonvar.c:
--------------------------------------------------------------------------------
1 | TYPETEST
2 |
3 | void foo(int x) {
4 | }
5 |
6 | void bar() {
7 | foo( ({ })...);
8 | }
9 |
--------------------------------------------------------------------------------
/src/testsuite/single/tests/compiler/fail/void_arg.c:
--------------------------------------------------------------------------------
1 | void foo(void x) {
2 | }
3 |
--------------------------------------------------------------------------------
/src/testsuite/single/tests/compiler/fail/void_arg2.c:
--------------------------------------------------------------------------------
1 | void foo(void, int bar);
2 |
--------------------------------------------------------------------------------
/src/testsuite/single/tests/compiler/fail/void_for_var.c:
--------------------------------------------------------------------------------
1 | void foo() {
2 | for (void x = 1; ; ) ;
3 | }
4 |
--------------------------------------------------------------------------------
/src/testsuite/single/tests/compiler/fail/void_global.c:
--------------------------------------------------------------------------------
1 | void x;
2 |
--------------------------------------------------------------------------------
/src/testsuite/single/tests/compiler/fail/void_local.c:
--------------------------------------------------------------------------------
1 | void foo() {
2 | void x;
3 | }
4 |
--------------------------------------------------------------------------------
/src/testsuite/single/tests/compiler/fail/void_member.c:
--------------------------------------------------------------------------------
1 | class foo {
2 | void x;
3 | }
4 |
--------------------------------------------------------------------------------
/src/testsuite/single/tests/compiler/succeed.c:
--------------------------------------------------------------------------------
1 | #pragma no_strict_types
2 | foo() { }
3 | bar(x) { }
4 | #pragma strict_types
5 | create() { }
6 |
7 | void foo(int);
8 |
9 | ; // only a warning
10 |
11 | int ident;
12 | #define X1 id
13 | #define X2 ent
14 | int paste = X1##X2;
15 | string x = @END
16 | xxx
17 | END;
18 | string * y = @@END
19 | xxx
20 | yyy
21 | zzz
22 | END
23 | ;
24 |
25 |
--------------------------------------------------------------------------------
/src/testsuite/single/tests/efuns/README:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/quixadhal/fluffos/a845107aab294f1d6533813c7f996ace6404f908/src/testsuite/single/tests/efuns/README
--------------------------------------------------------------------------------
/src/testsuite/single/tests/efuns/add_light.c:
--------------------------------------------------------------------------------
1 | void do_tests() {
2 |
3 | }
4 |
--------------------------------------------------------------------------------
/src/testsuite/single/tests/efuns/allocate.c:
--------------------------------------------------------------------------------
1 | void do_tests() {
2 | for (int i = 0; i < 10; i++) {
3 | ASSERT(sizeof(allocate(i)) == i);
4 | ASSERT(filter(allocate(i), (: $1 :)) == ({}));
5 | }
6 | ASSERT(allocate(0) == ({}));
7 | ASSERT(catch(allocate(-10)));
8 | }
9 |
--------------------------------------------------------------------------------
/src/testsuite/single/tests/efuns/allocate_buffer.c:
--------------------------------------------------------------------------------
1 | void do_tests() {
2 | #ifndef __NO_BUFFER_TYPE__
3 | int i = random(100000);
4 |
5 | ASSERT(sizeof(allocate_buffer(i)) == i);
6 | ASSERT(catch(allocate_buffer(-20)));
7 | #endif
8 | }
9 |
10 |
--------------------------------------------------------------------------------
/src/testsuite/single/tests/efuns/allocate_mapping.c:
--------------------------------------------------------------------------------
1 | void do_tests() {
2 | mapping m = allocate_mapping(random(1000));
3 | mixed x, y;
4 |
5 | foreach (x, y in m) {
6 | ASSERT(0); // shouldn't get here
7 | }
8 | }
9 |
--------------------------------------------------------------------------------
/src/testsuite/single/tests/efuns/badshad.c:
--------------------------------------------------------------------------------
1 | void create(int arg) {
2 | if (arg) {
3 | #ifndef __NO_SHADOWS__
4 | ASSERT(catch(shadow(previous_object())));
5 | destruct(this_object());
6 | #endif
7 | }
8 | }
9 |
10 | void i_am_bad() {
11 | }
12 |
--------------------------------------------------------------------------------
/src/testsuite/single/tests/efuns/break_string.c:
--------------------------------------------------------------------------------
1 | void do_tests() {
2 | /* tests later */
3 | }
4 |
--------------------------------------------------------------------------------
/src/testsuite/single/tests/efuns/cache_stats.c:
--------------------------------------------------------------------------------
1 | void do_tests() {
2 | #ifdef __CACHE_STATS__
3 | ASSERT(stringp(cache_stats()));
4 | #endif
5 | }
6 |
--------------------------------------------------------------------------------
/src/testsuite/single/tests/efuns/children.c:
--------------------------------------------------------------------------------
1 | void do_tests() {
2 | object x;
3 |
4 | foreach (x in children(__FILE__))
5 | if (x != this_object()) destruct(x);
6 |
7 | for (int i = 0; i < 5; i++)
8 | new(__FILE__);
9 |
10 | ASSERT(sizeof(children(__FILE__)) == 6);
11 | }
12 |
13 |
14 |
--------------------------------------------------------------------------------
/src/testsuite/single/tests/efuns/clonep.c:
--------------------------------------------------------------------------------
1 | void do_tests() {
2 | ASSERT(!clonep());
3 | ASSERT(!clonep(this_object()));
4 | ASSERT(clonep(new(__FILE__)));
5 | ASSERT(!clonep( ({ 1, 2 }) ));
6 | ASSERT(!clonep(1));
7 | }
8 |
--------------------------------------------------------------------------------
/src/testsuite/single/tests/efuns/cp.c:
--------------------------------------------------------------------------------
1 | #define TESTFILE "/testfile"
2 |
3 | void do_tests() {
4 | rm(TESTFILE);
5 | ASSERT(file_size(TESTFILE) == -1);
6 | ASSERT(cp("/single/master.c", TESTFILE));
7 | ASSERT(file_size(TESTFILE));
8 | ASSERT(read_file("/single/master.c") == read_file(TESTFILE));
9 | }
10 |
11 |
--------------------------------------------------------------------------------
/src/testsuite/single/tests/efuns/crc32.c:
--------------------------------------------------------------------------------
1 | void do_tests() {
2 | ASSERT(catch(crc32(0)));
3 | ASSERT(intp(crc32("foobarbazz")));
4 | }
5 |
6 |
--------------------------------------------------------------------------------
/src/testsuite/single/tests/efuns/ctime.c:
--------------------------------------------------------------------------------
1 | void do_tests() {
2 | string tm = ctime(0);
3 | ASSERT(stringp(tm));
4 | ASSERT(strsrch(tm, '\n') == -1);
5 | }
6 |
--------------------------------------------------------------------------------
/src/testsuite/single/tests/efuns/deep_inherit_list.c:
--------------------------------------------------------------------------------
1 | void do_tests() {
2 | mixed *x;
3 |
4 | ASSERT(deep_inherit_list(this_object()) == ({ }));
5 | x = deep_inherit_list(load_object("/single/tests/efuns/inh2.c"));
6 | ASSERT(sizeof(x) == 2);
7 | ASSERT(x[0] == "/single/tests/efuns/inh1.c");
8 | ASSERT(x[1] == "/single/tests/efuns/inh0.c");
9 | }
10 |
--------------------------------------------------------------------------------
/src/testsuite/single/tests/efuns/destruct.c:
--------------------------------------------------------------------------------
1 | void do_tests() {
2 | object ob = new(__FILE__);
3 | ASSERT(ob);
4 | destruct(ob);
5 | ASSERT(!ob);
6 | }
7 |
--------------------------------------------------------------------------------
/src/testsuite/single/tests/efuns/dumpallobj.c:
--------------------------------------------------------------------------------
1 | void do_tests() {
2 | dumpallobj();
3 | dumpallobj("/OBJ_DUMP2");
4 | }
5 |
--------------------------------------------------------------------------------
/src/testsuite/single/tests/efuns/ed.c:
--------------------------------------------------------------------------------
1 | void do_tests() {
2 | #ifndef __OLD_ED__
3 | ASSERT(catch(ed_cmd("foo")));
4 | rm("/ed_test");
5 | write_file("/ed_test", "xyzzy\nxxx");
6 | ed_start("/ed_test");
7 | ASSERT(ed_cmd("1s/y/a/g"));
8 | ASSERT(ed_cmd("2s!x!b!"));
9 | ASSERT(catch(ed_start("foo")));
10 | ASSERT(ed_cmd("x"));
11 | ASSERT(read_file("/ed_test") == "xazza\nbxx\n");
12 | #endif
13 | }
14 |
--------------------------------------------------------------------------------
/src/testsuite/single/tests/efuns/error.c:
--------------------------------------------------------------------------------
1 | void do_tests() {
2 | ASSERT(catch(error("hi")) == "*hi\n");
3 | ASSERT(catch(error("hi\n")) == "*hi\n");
4 | }
5 |
--------------------------------------------------------------------------------
/src/testsuite/single/tests/efuns/exec.c:
--------------------------------------------------------------------------------
1 | void do_tests() {
2 | object tp = this_player();
3 |
4 | if (tp) {
5 | ASSERT(exec(this_object(), tp));
6 | ASSERT(userp(this_object()));
7 | ASSERT(exec(tp, this_object()));
8 | }
9 | }
10 |
11 |
--------------------------------------------------------------------------------
/src/testsuite/single/tests/efuns/file_name.c:
--------------------------------------------------------------------------------
1 | void do_tests() {
2 | ASSERT(file_name() + ".c" == __FILE__);
3 | }
4 |
5 |
--------------------------------------------------------------------------------
/src/testsuite/single/tests/efuns/file_size.c:
--------------------------------------------------------------------------------
1 | void do_tests() {
2 | string str = "This is a test";
3 | rm("/test_file");
4 | write_file("/test_file", str);
5 | ASSERT(file_size("test_file") == strlen(str));
6 | }
7 |
--------------------------------------------------------------------------------
/src/testsuite/single/tests/efuns/find_call_out.c:
--------------------------------------------------------------------------------
1 | void do_tests() {
2 | ASSERT(find_call_out("foo") == -1);
3 | call_out("foo", 10);
4 | ASSERT(find_call_out("foo") == 10);
5 | ASSERT(find_call_out("bar") == -1);
6 | remove_call_out("foo");
7 | }
8 |
--------------------------------------------------------------------------------
/src/testsuite/single/tests/efuns/find_living.c:
--------------------------------------------------------------------------------
1 | void do_tests() {
2 | #ifndef __NO_ADD_ACTION__
3 | object ob;
4 | object tp;
5 |
6 | ASSERT(!find_living("bar"));
7 | SAVETP;
8 | enable_commands();
9 | set_living_name("bar");
10 | ob = find_living("bar");
11 | disable_commands();
12 | RESTORETP;
13 | ASSERT(ob == this_object());
14 | ASSERT(!find_living("bar"));
15 | #endif
16 | }
17 |
--------------------------------------------------------------------------------
/src/testsuite/single/tests/efuns/function_profile.c:
--------------------------------------------------------------------------------
1 | void do_tests() {
2 | #ifdef __PROFILE_FUNCTIONS__
3 | mixed *hmm = function_profile(this_object());
4 | ASSERT(sizeof(hmm) == 1);
5 | ASSERT(hmm[0]["calls"]);
6 | ASSERT(!undefinedp(hmm[0]["self"]));
7 | ASSERT(!undefinedp(hmm[0]["children"]));
8 | ASSERT(hmm[0]["name"] == "do_tests");
9 | #endif
10 | }
11 |
12 |
--------------------------------------------------------------------------------
/src/testsuite/single/tests/efuns/functionp.c:
--------------------------------------------------------------------------------
1 | void do_tests() {
2 | ASSERT(!functionp(0));
3 | ASSERT(!functionp("foo"));
4 | ASSERT(functionp((: do_tests :)));
5 | }
6 |
--------------------------------------------------------------------------------
/src/testsuite/single/tests/efuns/generate_source.c:
--------------------------------------------------------------------------------
1 | void do_tests() {
2 | // maybe later
3 | }
4 |
--------------------------------------------------------------------------------
/src/testsuite/single/tests/efuns/get_char.c:
--------------------------------------------------------------------------------
1 | void do_tests() {
2 | // maybe later
3 | }
4 |
--------------------------------------------------------------------------------
/src/testsuite/single/tests/efuns/get_config.c:
--------------------------------------------------------------------------------
1 | void do_tests() {
2 | ASSERT(get_config(0) == MUD_NAME);
3 | ASSERT(catch(get_config(-1)));
4 | }
5 |
--------------------------------------------------------------------------------
/src/testsuite/single/tests/efuns/get_dir.c:
--------------------------------------------------------------------------------
1 | void do_tests() {
2 | // more later
3 | }
4 |
--------------------------------------------------------------------------------
/src/testsuite/single/tests/efuns/goodshad.c:
--------------------------------------------------------------------------------
1 | void create(int arg) {
2 | #ifndef __NO_SHADOWS__
3 | if (arg) {
4 | ASSERT(shadow(previous_object()));
5 | ASSERT(catch(shadow(previous_object())));
6 | }
7 | #endif
8 | }
9 |
10 | object foo() {
11 | return this_object();
12 | }
13 |
--------------------------------------------------------------------------------
/src/testsuite/single/tests/efuns/has_errors.c:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/quixadhal/fluffos/a845107aab294f1d6533813c7f996ace6404f908/src/testsuite/single/tests/efuns/has_errors.c
--------------------------------------------------------------------------------
/src/testsuite/single/tests/efuns/in_edit.c:
--------------------------------------------------------------------------------
1 | void do_tests() {
2 | #ifndef __OLD_ED__
3 | ASSERT(!in_edit(this_object()));
4 | ed_start("/ed_test");
5 | ASSERT(in_edit(this_object()) == "/ed_test");
6 | destruct(this_object());
7 | #endif
8 | }
9 |
--------------------------------------------------------------------------------
/src/testsuite/single/tests/efuns/inh0.c:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/quixadhal/fluffos/a845107aab294f1d6533813c7f996ace6404f908/src/testsuite/single/tests/efuns/inh0.c
--------------------------------------------------------------------------------
/src/testsuite/single/tests/efuns/inh1.c:
--------------------------------------------------------------------------------
1 | inherit "/single/tests/efuns/inh0.c";
2 |
--------------------------------------------------------------------------------
/src/testsuite/single/tests/efuns/inh2.c:
--------------------------------------------------------------------------------
1 | inherit "/single/tests/efuns/inh1.c";
2 |
--------------------------------------------------------------------------------
/src/testsuite/single/tests/efuns/inherit_list.c:
--------------------------------------------------------------------------------
1 | void do_tests() {
2 | mixed *x;
3 | ASSERT(inherit_list(this_object()) == ({}));
4 | x = inherit_list(load_object("/single/tests/efuns/inh2.c"));
5 | ASSERT(sizeof(x) == 1);
6 | ASSERT(x[0] == "/single/tests/efuns/inh1.c");
7 | }
8 |
--------------------------------------------------------------------------------
/src/testsuite/single/tests/efuns/input_to.c:
--------------------------------------------------------------------------------
1 | void foo() {}
2 |
3 | void do_tests() {
4 | // We can only set up one input_to, which makes this hard to test
5 | // exhaustively
6 | if (this_player())
7 | ASSERT(input_to((: foo, "bazz" :), 1, "bar"));
8 | }
9 |
--------------------------------------------------------------------------------
/src/testsuite/single/tests/efuns/interactive.c:
--------------------------------------------------------------------------------
1 | void do_tests() {
2 | if (this_player())
3 | ASSERT(interactive(this_player()));
4 | ASSERT(!interactive(this_object()));
5 | ASSERT(sizeof(users()) == sizeof(filter(users(), (: interactive :))));
6 | }
7 |
8 |
--------------------------------------------------------------------------------
/src/testsuite/single/tests/efuns/intp.c:
--------------------------------------------------------------------------------
1 | void do_tests() {
2 | ASSERT(intp(5));
3 | ASSERT(intp(([])[0]));
4 | ASSERT(!intp( ({}) ));
5 | ASSERT(!intp(([])));
6 | ASSERT(!intp(this_object()));
7 | destruct(this_object());
8 | ASSERT(intp(this_object()));
9 | }
10 |
--------------------------------------------------------------------------------
/src/testsuite/single/tests/efuns/keys.c:
--------------------------------------------------------------------------------
1 | void do_tests() {
2 | mapping m = ([ 1 : 2, 3 : 4, 5 : 6 ]);
3 | mixed *k = keys(m);
4 | mixed x, y;
5 |
6 | foreach (x, y in m) {
7 | k -= ({ x });
8 | }
9 | ASSERT(k == ({}));
10 | }
11 |
--------------------------------------------------------------------------------
/src/testsuite/single/tests/efuns/light.c:
--------------------------------------------------------------------------------
1 | void create() {
2 | #ifndef __NO_LIGHT__
3 | set_light(3);
4 | #endif
5 | }
6 |
7 | void move(object ob) {
8 | #ifndef __NO_ENVIRONMENT__
9 | move_object(ob);
10 | #endif
11 | }
12 |
--------------------------------------------------------------------------------
/src/testsuite/single/tests/efuns/living.c:
--------------------------------------------------------------------------------
1 | void do_tests() {
2 | #ifndef __NO_ADD_ACTION__
3 | if (this_player())
4 | ASSERT(living(this_player()));
5 | ASSERT(!living(this_object()));
6 | #endif
7 | }
8 |
--------------------------------------------------------------------------------
/src/testsuite/single/tests/efuns/livings.c:
--------------------------------------------------------------------------------
1 | void do_tests() {
2 | #ifndef __NO_ADD_ACTION__
3 | ASSERT(!sizeof(filter(livings(), (: !living($1) :))));
4 | if (this_player())
5 | ASSERT(member_array(this_player(), livings()) != -1);
6 | #endif
7 | }
8 |
--------------------------------------------------------------------------------
/src/testsuite/single/tests/efuns/malloc_status.c:
--------------------------------------------------------------------------------
1 | void do_tests() {
2 | ASSERT(stringp(malloc_status()));
3 | }
4 |
--------------------------------------------------------------------------------
/src/testsuite/single/tests/efuns/map_delete.c:
--------------------------------------------------------------------------------
1 | void do_tests() {
2 | mapping m = ([ 1 : 2, "foo" : 3, this_object() : 5 ]);
3 |
4 | map_delete(m, 1);
5 | ASSERT(undefinedp(m[1]));
6 | map_delete(m, ({}));
7 | map_delete(m, "foo");
8 | ASSERT(undefinedp(m["foo"]));
9 | map_delete(m, this_object());
10 | ASSERT(undefinedp(m[this_object()]));
11 | }
12 |
--------------------------------------------------------------------------------
/src/testsuite/single/tests/efuns/mapp.c:
--------------------------------------------------------------------------------
1 | void do_tests() {
2 | ASSERT(mapp(([])));
3 | ASSERT(!mapp(0));
4 | ASSERT(!mapp("foo"));
5 | }
6 |
--------------------------------------------------------------------------------
/src/testsuite/single/tests/efuns/master.c:
--------------------------------------------------------------------------------
1 | void do_tests() {
2 | ASSERT(master());
3 | ASSERT(objectp(master()));
4 | }
5 |
--------------------------------------------------------------------------------
/src/testsuite/single/tests/efuns/member_array.c:
--------------------------------------------------------------------------------
1 | void do_tests() {
2 | ASSERT(member_array('c', "foo") == -1);
3 | ASSERT(member_array('b', "abar") == 1);
4 | ASSERT(member_array('y', "xyzzy") == 1);
5 | ASSERT(member_array('y', "xyzzy", 2) == 4);
6 | ASSERT(member_array(2, ({ 1, 2, 3 })) == 1);
7 | ASSERT(member_array("foo", ({ 1, "foo", 3 })) == 1);
8 | }
9 |
--------------------------------------------------------------------------------
/src/testsuite/single/tests/efuns/message.c:
--------------------------------------------------------------------------------
1 | void do_tests() {
2 | // later
3 | }
4 |
5 |
--------------------------------------------------------------------------------
/src/testsuite/single/tests/efuns/mkdir.c:
--------------------------------------------------------------------------------
1 | void do_tests() {
2 | // later
3 | }
4 |
--------------------------------------------------------------------------------
/src/testsuite/single/tests/efuns/move_object.c:
--------------------------------------------------------------------------------
1 | void do_tests() {
2 | #ifndef __NO_ENVIRONMENT__
3 | ASSERT(catch(move_object("foo")));
4 | ASSERT(catch(move_object(__FILE__)));
5 | ASSERT(catch(move_object(this_object())));
6 | move_object(master());
7 | ASSERT(environment(this_object()) == master());
8 | destruct(this_object());
9 | ASSERT(catch(move_object(master())));
10 | #endif
11 | }
12 |
--------------------------------------------------------------------------------
/src/testsuite/single/tests/efuns/mud_status.c:
--------------------------------------------------------------------------------
1 | void do_tests() {
2 | ASSERT(stringp(mud_status()));
3 | ASSERT(stringp(mud_status(1)));
4 | }
5 |
--------------------------------------------------------------------------------
/src/testsuite/single/tests/efuns/notify_fail.c:
--------------------------------------------------------------------------------
1 | void do_tests() {
2 | #ifndef __NO_ADD_ACTION__
3 | notify_fail("foo");
4 | notify_fail((: write("hi!\n") :));
5 | #endif
6 | }
7 |
--------------------------------------------------------------------------------
/src/testsuite/single/tests/efuns/nullp.c:
--------------------------------------------------------------------------------
1 | int x;
2 |
3 | void do_tests() {
4 | ASSERT(evaluate( (: nullp($1) :) ));
5 | ASSERT(nullp(x));
6 | ASSERT(!nullp(1));
7 | }
8 |
--------------------------------------------------------------------------------
/src/testsuite/single/tests/efuns/objectp.c:
--------------------------------------------------------------------------------
1 | void do_tests() {
2 | ASSERT(objectp(this_object()));
3 | ASSERT(!objectp(0));
4 | }
5 |
6 |
--------------------------------------------------------------------------------
/src/testsuite/single/tests/efuns/opcprof.c:
--------------------------------------------------------------------------------
1 | void do_tests() {
2 | #if defined(__OPCPROF__) || defined(__OPCPROF_2D__)
3 | opcprof();
4 | opcprof("/opc");
5 | #endif
6 | }
7 |
--------------------------------------------------------------------------------
/src/testsuite/single/tests/efuns/pointerp.c:
--------------------------------------------------------------------------------
1 | void do_tests() {
2 | ASSERT(pointerp( ({}) ));
3 | ASSERT(!pointerp( ([]) ));
4 | }
5 |
--------------------------------------------------------------------------------
/src/testsuite/single/tests/efuns/previous_object.c:
--------------------------------------------------------------------------------
1 | void do_tests() {
2 | object *obs = previous_object(-1);
3 |
4 | for (int i = 0; i < sizeof(obs); i++) {
5 | ASSERT(obs[i] == previous_object(i));
6 | }
7 | }
8 |
--------------------------------------------------------------------------------
/src/testsuite/single/tests/efuns/printf.c:
--------------------------------------------------------------------------------
1 | void do_tests() {
2 | // more complete testing done under sprintf()
3 | printf("Printf test.\n");
4 | }
5 |
--------------------------------------------------------------------------------
/src/testsuite/single/tests/efuns/query_idle.c:
--------------------------------------------------------------------------------
1 | void do_tests() {
2 | if (this_player())
3 | ASSERT(intp(query_idle(this_player())));
4 | }
5 |
--------------------------------------------------------------------------------
/src/testsuite/single/tests/efuns/query_ip_name.c:
--------------------------------------------------------------------------------
1 | void do_tests() {
2 | ASSERT(query_ip_number(this_object()) == 0);
3 | if (this_player())
4 | ASSERT(stringp(query_ip_number(this_player())));
5 | }
6 |
--------------------------------------------------------------------------------
/src/testsuite/single/tests/efuns/query_ip_number.c:
--------------------------------------------------------------------------------
1 | void do_tests() {
2 | ASSERT(query_ip_number(this_object()) == 0);
3 | if (this_player())
4 | ASSERT(stringp(query_ip_number(this_player())));
5 | }
6 |
--------------------------------------------------------------------------------
/src/testsuite/single/tests/efuns/query_load_average.c:
--------------------------------------------------------------------------------
1 | void do_tests() {
2 | ASSERT(stringp(query_load_average()));
3 | }
4 |
5 |
--------------------------------------------------------------------------------
/src/testsuite/single/tests/efuns/query_privs.c:
--------------------------------------------------------------------------------
1 | void do_tests() {
2 | #ifdef __PRIVS__
3 | ASSERT(query_privs(this_object()));
4 | #endif
5 | }
6 |
--------------------------------------------------------------------------------
/src/testsuite/single/tests/efuns/query_snoop.c:
--------------------------------------------------------------------------------
1 | void do_tests() {
2 | #ifndef __NO_SNOOP__
3 | ASSERT(query_snoop(this_object()) == 0);
4 | #endif
5 | }
6 |
--------------------------------------------------------------------------------
/src/testsuite/single/tests/efuns/query_snooping.c:
--------------------------------------------------------------------------------
1 | void do_tests() {
2 | #ifndef __NO_SNOOP__
3 | ASSERT(query_snooping(this_object()) == 0);
4 | #endif
5 | }
6 |
--------------------------------------------------------------------------------
/src/testsuite/single/tests/efuns/query_verb.c:
--------------------------------------------------------------------------------
1 | #ifndef __NO_ADD_ACTION__
2 | void func() {
3 | ASSERT(query_verb() == "foo");
4 | }
5 | #endif
6 |
7 | void do_tests() {
8 | #ifndef __NO_ADD_ACTION__
9 | object tp;
10 | SAVETP;
11 | enable_commands();
12 | add_action( (: func :), "foo");
13 | RESTORETP;
14 | command("foo");
15 | #endif
16 | }
17 |
--------------------------------------------------------------------------------
/src/testsuite/single/tests/efuns/random.c:
--------------------------------------------------------------------------------
1 | void do_tests() {
2 | for (int i = 0; i < 100; i++) {
3 | ASSERT(random(5) >= 0);
4 | ASSERT(random(5) < 5);
5 | }
6 | }
7 |
--------------------------------------------------------------------------------
/src/testsuite/single/tests/efuns/readme:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/quixadhal/fluffos/a845107aab294f1d6533813c7f996ace6404f908/src/testsuite/single/tests/efuns/readme
--------------------------------------------------------------------------------
/src/testsuite/single/tests/efuns/receive.c:
--------------------------------------------------------------------------------
1 | void do_tests() {
2 | ASSERT(!receive(""));
3 | ASSERT(!receive("recieve_test"));
4 | }
5 |
--------------------------------------------------------------------------------
/src/testsuite/single/tests/efuns/remove_action.c:
--------------------------------------------------------------------------------
1 | int called = 0;
2 |
3 | void func() { called = 1; }
4 |
5 | void do_tests() {
6 | #ifndef __NO_ADD_ACTION__
7 | object tp;
8 |
9 | SAVETP;
10 | enable_commands();
11 | add_action( "func", "bar" );
12 | ASSERT(remove_action( "func", "bar" ));
13 | RESTORETP;
14 | command("bar");
15 | ASSERT(!called);
16 | #endif
17 | }
18 |
--------------------------------------------------------------------------------
/src/testsuite/single/tests/efuns/rename.c:
--------------------------------------------------------------------------------
1 | void do_tests() {
2 | write_file("/rename_test", "Hmm.");
3 | rename("/rename_test", "/ren_test");
4 | ASSERT(file_size("/rename_test") == -1);
5 | ASSERT(read_file("/ren_test") == "Hmm.");
6 | rename("/ren_test", "/single");
7 | ASSERT(file_size("/ren_test") == -1);
8 | ASSERT(read_file("/single/ren_test") == "Hmm.");
9 | rm("/single/ren_test");
10 | }
11 |
--------------------------------------------------------------------------------
/src/testsuite/single/tests/efuns/rm.c:
--------------------------------------------------------------------------------
1 | void do_tests() {
2 | write_file("/rm_test", "foo");
3 | ASSERT(file_size("/rm_test"));
4 | rm("/rm_test");
5 | ASSERT(file_size("/rm_test") == -1);
6 | }
7 |
--------------------------------------------------------------------------------
/src/testsuite/single/tests/efuns/rmdir.c:
--------------------------------------------------------------------------------
1 | void do_tests() {
2 | mkdir("/rm_dir");
3 | ASSERT(file_size("/rm_dir") == -2);
4 | rmdir("/rm_dir");
5 | ASSERT(file_size("/rm_dir") == -1);
6 | }
7 |
--------------------------------------------------------------------------------
/src/testsuite/single/tests/efuns/set_debug_level.c:
--------------------------------------------------------------------------------
1 | void do_tests() {
2 | #ifdef __DEBUG_MACRO__
3 | set_debug_level(10);
4 | set_debug_level(0);
5 | #endif
6 | }
7 |
--------------------------------------------------------------------------------
/src/testsuite/single/tests/efuns/set_hide.c:
--------------------------------------------------------------------------------
1 | void do_tests() {
2 | set_hide(1);
3 | set_hide(0);
4 | }
5 |
--------------------------------------------------------------------------------
/src/testsuite/single/tests/efuns/set_privs.c:
--------------------------------------------------------------------------------
1 | void do_tests() {
2 | #ifdef __PRIVS__
3 | set_privs(this_object(), "foo");
4 | ASSERT(query_privs(this_object()) == "foo");
5 | set_privs(this_object(), 0);
6 | ASSERT(query_privs(this_object()) == 0);
7 | #endif
8 | }
9 |
--------------------------------------------------------------------------------
/src/testsuite/single/tests/efuns/shutdown.c:
--------------------------------------------------------------------------------
1 | void do_the_nasty_deed() {
2 | shutdown(55);
3 | ASSERT(0);
4 | }
5 |
6 | void do_tests() {
7 | // This one is hard to test :-)
8 | call_out( (: do_the_nasty_deed :), 60);
9 | }
10 |
--------------------------------------------------------------------------------
/src/testsuite/single/tests/efuns/sizeof.c:
--------------------------------------------------------------------------------
1 | void do_tests() {
2 | ASSERT(sizeof(({ 1, 2, 3 })) == 3);
3 | ASSERT(sizeof(allocate(50)) == 50);
4 | ASSERT(sizeof(allocate_mapping(5)) == 0);
5 | ASSERT(sizeof( ([ 1 : 2, 3 : 4 ]) ) == 2);
6 | ASSERT(sizeof("foo") == 3);
7 | ASSERT(sizeof((: sizeof :)) == 0);
8 | ASSERT(sizeof(6) == 0);
9 | }
10 |
--------------------------------------------------------------------------------
/src/testsuite/single/tests/efuns/snoop.c:
--------------------------------------------------------------------------------
1 | void do_tests() {
2 | // maybe when it is possible for arbitrary objects to snoop.
3 | }
4 |
--------------------------------------------------------------------------------
/src/testsuite/single/tests/efuns/sscanf.c:
--------------------------------------------------------------------------------
1 | inherit "/inherit/tests";
2 |
3 | void do_tests() {
4 | string s;
5 |
6 | ASSERT(catch(sscanf("you%", "%s%", s)));
7 | ASSERT(catch(sscanf("you%", "%su%", s)));
8 | sscanf("you%", "%s%%", s);
9 | ASSERT(s == "you");
10 | sscanf("you%", "%su%%", s);
11 | ASSERT(s == "yo");
12 | }
13 |
--------------------------------------------------------------------------------
/src/testsuite/single/tests/efuns/to_float.c:
--------------------------------------------------------------------------------
1 | inherit "/inherit/tests";
2 |
3 | void do_tests() {
4 | int i = 5;
5 | float f = 6.7;
6 |
7 | f = to_float(i);
8 | ASSERT(f == 5.0);
9 |
10 | f = i;
11 | ASSERT(f == 5.0);
12 |
13 | f = to_float("1.23");
14 | ASSERT(f == 1.23);
15 |
16 | f = to_float("ajdfj");
17 | ASSERT(f == 0.00);
18 | }
19 |
--------------------------------------------------------------------------------
/src/testsuite/single/tests/efuns/to_int.c:
--------------------------------------------------------------------------------
1 | void do_tests() {
2 | int i = 5;
3 | float f = 6.7;
4 |
5 | i = to_int(f);
6 | ASSERT(i == 6);
7 |
8 | i = f;
9 | ASSERT(i == 6);
10 |
11 | i = to_int("7");
12 | ASSERT(i == 7);
13 |
14 | i = to_int("ajdfj");
15 | ASSERT(i == 0);
16 | }
17 |
--------------------------------------------------------------------------------
/src/testsuite/single/tests/efuns/unloaded.c:
--------------------------------------------------------------------------------
1 | void create() {
2 | }
3 |
--------------------------------------------------------------------------------
/src/testsuite/single/tests/efuns/users.c:
--------------------------------------------------------------------------------
1 | void do_tests() {
2 | ASSERT(arrayp(users()));
3 | if (this_player())
4 | ASSERT(member_array(this_player(), users()) != -1);
5 | }
6 |
--------------------------------------------------------------------------------
/src/testsuite/single/tests/efuns/values.c:
--------------------------------------------------------------------------------
1 | void do_tests() {
2 | mapping m = ([ 1 : 2, 3 : 4, 5 : 6 ]);
3 | mixed *k = values(m);
4 | mixed x, y;
5 |
6 | foreach (x, y in m) {
7 | k -= ({ y });
8 | }
9 | ASSERT(k == ({}));
10 | }
11 |
--------------------------------------------------------------------------------
/src/testsuite/single/void.c:
--------------------------------------------------------------------------------
1 | void dummy()
2 | {
3 | }
4 |
--------------------------------------------------------------------------------
/src/testsuite/test_control.c:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/quixadhal/fluffos/a845107aab294f1d6533813c7f996ace6404f908/src/testsuite/test_control.c
--------------------------------------------------------------------------------
/src/testsuite/u/README:
--------------------------------------------------------------------------------
1 | This directory contains individual directories for those who will building
2 | the mud.
3 |
--------------------------------------------------------------------------------
/src/testsuite/u/readme:
--------------------------------------------------------------------------------
1 | This directory contains individual directories for those who will building
2 | the mud.
3 |
--------------------------------------------------------------------------------
/src/tmp/insttest:
--------------------------------------------------------------------------------
1 | whatever
2 |
--------------------------------------------------------------------------------
/src/uvalarm.h:
--------------------------------------------------------------------------------
1 | unsigned uvalarm(unsigned int, unsigned int);
2 |
--------------------------------------------------------------------------------
/src/windows/clean.bat:
--------------------------------------------------------------------------------
1 | del efunction*.h
2 | del efun_d*.c
3 | del efun_p*.h
4 | del func_s*.cpp
5 | del grammar_tab.c
6 | del grammar_tab.h
7 | del grammar.y
8 | del make_f*.c
9 | del malloc.c
10 | del mallocwrapper.c
11 | del opc.h
12 | del opcodes.h
13 | del option_defs.*
14 | del configure.h
--------------------------------------------------------------------------------
/src/windows/configure.h:
--------------------------------------------------------------------------------
1 | #define INCL_STDLIB_H
2 | #define INCL_TIME_H
3 | #define INCL_FCNTL_H
4 | #define INCL_DOS_H
5 | #define INCL_SYS_STAT_H
6 | #define INCL_LIMITS_H
7 | #define USE_STRUCT_DIRENT
8 | #define INCL_STDARG_H
9 | #define HAS_MEMMOVE
10 | #define RAND
11 | #define HAS_STRERROR
12 | #define HAS_GETCWD
13 |
14 | #define SIZEOF_INT 4
15 | #define SIZEOF_PTR 4
16 | #define SIZEOF_SHORT 2
17 | #define SIZEOF_FLOAT 4
18 |
--------------------------------------------------------------------------------
/src/windows/step1.bat:
--------------------------------------------------------------------------------
1 | bison make_func.y
2 |
--------------------------------------------------------------------------------
/src/windows/stepdbg.bat:
--------------------------------------------------------------------------------
1 | .\windebug\edit_source -configure
2 | .\windebug\edit_source -options -process grammar.y.pre -malloc -build_func_spec "e:\lang\msdev\bin\cl /E /D "DEBUG" " -build_efuns
3 |
--------------------------------------------------------------------------------
/src/windows/steprel.bat:
--------------------------------------------------------------------------------
1 | .\winrel\edit_source -configure
2 | .\winrel\edit_source -options -process grammar.y.pre -malloc -build_func_spec "e:\lang\msdev\bin\cl /E" -build_efuns
3 |
4 | ren efun_protos.h efun_tmp.h
5 | sed -f sed.cmd efun_tmp.h > efun_protos.h
6 |
7 |
--------------------------------------------------------------------------------
/src/wrappedmalloc.h:
--------------------------------------------------------------------------------
1 | #ifndef WRAPPED_MALLOC_H
2 | #define WRAPPED_MALLOC_H
3 | #ifdef WRAPPEDMALLOC
4 | void *wrappedmalloc (int);
5 | void *wrappedrealloc (void *, int);
6 | void *wrappedcalloc (int, int);
7 | void wrappedfree (void *);
8 |
9 | void wrappedmalloc_init (void);
10 | void dump_malloc_data (outbuffer_t *);
11 | #endif
12 | #endif
13 |
--------------------------------------------------------------------------------