/usr/lib/swipl/library/rbtrees.pl
All Application Manual Name SummaryHelp

  • swipl
    • library
      • error.pl
      • debug.pl -- Print debug messages and test assertions
      • apply.pl -- Apply predicates on a list
      • lists.pl -- List Manipulation
      • broadcast.pl -- Event service
      • shlib.pl -- Utility library for loading foreign objects (DLLs, shared objects)
      • option.pl -- Option list processing
      • thread_pool.pl -- Resource bounded thread management
      • gensym.pl -- Generate unique symbols
      • settings.pl -- Setting management
      • arithmetic.pl -- Extensible arithmetic
      • main.pl
      • readutil.pl -- Read utilities
      • operators.pl -- Manage operators
      • pairs.pl -- Operations on key-value lists
      • prolog_source.pl -- Examine Prolog source-files
      • record.pl -- Access compound arguments by name
      • quasi_quotations.pl -- Define Quasi Quotation syntax
      • sandbox.pl
      • apply_macros.pl -- Goal expansion rules to avoid meta-calling
      • yall.pl -- Lambda expressions
      • assoc.pl -- Binary associations
      • prolog_format.pl -- Analyse format specifications
      • pure_input.pl -- Pure Input from files and streams
      • solution_sequences.pl -- Modify solution sequences
      • ordsets.pl -- Ordered set manipulation
      • random.pl -- Random numbers
      • base64.pl -- Base64 encoding and decoding
      • aggregate.pl -- Aggregation operators on backtrackable predicates
      • predicate_options.pl -- Access and analyse predicate options
      • csv.pl -- Process CSV (Comma-Separated Values) data
      • pprint.pl -- Pretty Print Prolog terms
      • atom.pl -- Operations on atoms
      • modules.pl -- Module utility predicates
      • occurs.pl -- Finding and counting sub-terms
      • prolog_xref.pl -- Prolog cross-referencer data collection
      • prolog_colour.pl -- Prolog syntax colouring support.
      • lazy_lists.pl -- Lazy list handling
      • ugraphs.pl -- Graph manipulation library
      • url.pl -- Analysing and constructing URL
      • www_browser.pl -- Open a URL in the users browser
      • prolog_pack.pl -- A package manager for Prolog
      • git.pl -- Run GIT commands
      • utf8.pl -- UTF-8 encoding/decoding on lists of character codes.
      • quintus.pl
      • prolog_versions.pl -- Demand specific (Prolog) versions
      • prolog_wrap.pl -- Wrapping predicates
      • dialect.pl -- Support multiple Prolog dialects
      • date.pl -- Process dates and times
      • persistency.pl -- Provide persistent dynamic predicates
      • iostream.pl -- Utilities to deal with streams
      • prolog_code.pl -- Utilities for reasoning about code
      • strings.pl -- String utilities
      • dif.pl -- The dif/2 constraint
      • edinburgh.pl -- Some traditional Edinburgh predicates
      • terms.pl -- Term manipulation
      • ansi_term.pl -- Print decorated text to ANSI consoles
      • threadutil.pl -- Interactive thread utilities
      • prolog_stack.pl -- Examine the Prolog stack
      • prolog_clause.pl
      • prolog_breakpoints.pl -- Manage Prolog break-points
      • wfs.pl
      • sort.pl
      • dicts.pl -- Dict utilities
      • varnumbers.pl
      • rbtrees.pl -- Red black trees
        • rb_new/1
        • rb_empty/1
        • rb_lookup/3
        • rb_min/3
        • rb_max/3
        • rb_next/4
        • rb_previous/4
        • rb_update/4
        • rb_update/5
        • rb_apply/4
        • rb_in/3
        • rb_insert/4
        • rb_insert_new/4
        • rb_delete/3
        • rb_delete/4
        • rb_del_min/4
        • rb_del_max/4
        • rb_visit/2
        • rb_visit_range/4
        • rb_map/3
        • rb_map/2
        • rb_fold/4
        • rb_clone/3
        • rb_partial_map/4
        • rb_keys/2
        • list_to_rbtree/2
        • ord_list_to_rbtree/2
        • rb_size/2
        • is_rbtree/1
      • backcomp.pl -- Backward compatibility
      • charsio.pl -- I/O on Lists of Character Codes
      • base32.pl -- Base32 encoding and decoding
      • codesio.pl -- I/O on Lists of Character Codes
      • coinduction.pl -- Co-Logic Programming
      • heaps.pl -- heaps/priority queues
      • statistics.pl -- Get information about resource usage
      • when.pl -- Conditional coroutining
      • ctypes.pl -- Character code classification
      • listing.pl -- List programs and pretty print clauses
      • intercept.pl -- Intercept and signal interface
      • prolog_debug.pl -- User level debugging tools
      • tty.pl -- Terminal operations
      • fastrw.pl -- Fast reading and writing of terms
      • prolog_profile.pl -- Execution profiler
      • optparse.pl -- command line parsing
      • help.pl -- Text based manual
      • prolog_trace.pl -- Print access to predicates
      • hashtable.pl -- Hash tables
      • tableutil.pl
      • tables.pl -- XSB interface to tables
      • system.pl -- System utilities
      • exceptions.pl -- Exception classification
      • shell.pl -- Elementary shell commands
      • thread.pl -- High level thread primitives
      • check.pl -- Consistency checking
      • prolog_jiti.pl -- Just In Time Indexing (JITI) utilities
      • nb_rbtrees.pl
      • pio.pl -- Pure I/O
      • increval.pl -- Incremental dynamic predicate modification
      • prolog_autoload.pl -- Autoload all dependencies
      • zip.pl -- Access resource ZIP archives
      • prolog_metainference.pl -- Infer meta-predicate properties
      • explain.pl
      • qpforeign.pl -- Quintus compatible foreign loader
      • nb_set.pl
      • prolog_codewalk.pl
      • writef.pl
      • prolog_deps.pl
      • make.pl
      • check_installation.pl -- Check installation issues and features
      • qsave.pl
      • rwlocks.pl
      • streams.pl -- Manage Prolog streams
      • portray_text.pl
      • edit.pl
      • prolog_history.pl
      • macros.pl
      • files.pl
      • vm.pl
      • prolog_coverage.pl
      • readln.pl
      • oset.pl -- Ordered set manipulation
      • prolog_qlfmake.pl -- Compile the library to QLF format
 rb_partial_map(+Tree, +Keys, :G, -NewTree)
For all nodes Key in Keys, if the value associated with key Key is Val0 in tree Tree, and if call(G,Val0,ValF) holds, then the value associated with Key in NewTree is ValF, otherwise it is the value associated with the key in Tree. Fails if Key isn't in Tree or if call(G,Val0,ValF) is not satisfiable for all Val0 in Keys. Assumes keys are sorted and not repeated (fails if this is not true).