teal-src/util/logger.d.tl
author Matthew Wild <mwild1@gmail.com>
Fri, 02 Dec 2022 20:32:36 +0000
changeset 12799 87424cbedc55
parent 12625 041d067de38b
permissions -rw-r--r--
util.hashring: Support associating arbitrary data with nodes In this API, a 'node' is always a simple text string. Sometimes the caller may have a more complex structure representing a node, but the hash ring is really only concerned with the node's name. This API change allows :add_nodes() to take a table of `node_name = value` pairs, as well as the simple array of node names previously accepted. The 'value' of the selected node is returned as a new second result from :get_node(). If no value is passed when a node is added, it defaults to `true` (as before, but this was never previously exposed).
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
12625
041d067de38b util.logger: Add Teal interface description
Kim Alvefur <zash@zash.se>
parents:
diff changeset
     1
local record util
041d067de38b util.logger: Add Teal interface description
Kim Alvefur <zash@zash.se>
parents:
diff changeset
     2
	enum loglevel
041d067de38b util.logger: Add Teal interface description
Kim Alvefur <zash@zash.se>
parents:
diff changeset
     3
		"debug"
041d067de38b util.logger: Add Teal interface description
Kim Alvefur <zash@zash.se>
parents:
diff changeset
     4
		"info"
041d067de38b util.logger: Add Teal interface description
Kim Alvefur <zash@zash.se>
parents:
diff changeset
     5
		"warn"
041d067de38b util.logger: Add Teal interface description
Kim Alvefur <zash@zash.se>
parents:
diff changeset
     6
		"error"
041d067de38b util.logger: Add Teal interface description
Kim Alvefur <zash@zash.se>
parents:
diff changeset
     7
	end
041d067de38b util.logger: Add Teal interface description
Kim Alvefur <zash@zash.se>
parents:
diff changeset
     8
	type logger = function ( loglevel, string, ...:any )
041d067de38b util.logger: Add Teal interface description
Kim Alvefur <zash@zash.se>
parents:
diff changeset
     9
	type sink = function ( string, loglevel, string, ...:any )
041d067de38b util.logger: Add Teal interface description
Kim Alvefur <zash@zash.se>
parents:
diff changeset
    10
	type simple_sink = function ( string, loglevel, string )
041d067de38b util.logger: Add Teal interface description
Kim Alvefur <zash@zash.se>
parents:
diff changeset
    11
	init : function ( string ) : logger
041d067de38b util.logger: Add Teal interface description
Kim Alvefur <zash@zash.se>
parents:
diff changeset
    12
	make_logger : function ( string, loglevel ) : function ( string, ...:any )
041d067de38b util.logger: Add Teal interface description
Kim Alvefur <zash@zash.se>
parents:
diff changeset
    13
	reset : function ()
041d067de38b util.logger: Add Teal interface description
Kim Alvefur <zash@zash.se>
parents:
diff changeset
    14
	add_level_sink : function ( loglevel, sink )
041d067de38b util.logger: Add Teal interface description
Kim Alvefur <zash@zash.se>
parents:
diff changeset
    15
	add_simple_sink : function ( simple_sink, { loglevel } )
041d067de38b util.logger: Add Teal interface description
Kim Alvefur <zash@zash.se>
parents:
diff changeset
    16
end
041d067de38b util.logger: Add Teal interface description
Kim Alvefur <zash@zash.se>
parents:
diff changeset
    17
041d067de38b util.logger: Add Teal interface description
Kim Alvefur <zash@zash.se>
parents:
diff changeset
    18
return util