File

teal-src/util/ringbuffer.d.tl @ 12254:5b0c8e499288

modulemanager: Add plugin load filter that reads module metadata from source Metadata in modules is added using lines formatted as: --% key: value Where key is a valid identifier string, and value is also a string (leading and trailing whitespace are trimmed during parsing). The initial supported keys are: --% requires_core_features: feature1, feature2, ... --% conflicts_core_features: feature1, feature2. ... These 'features' map to features reported by the new core.features module. A benefit of this load-time metadata approach compared to e.g. something like module:requires()/module:conflicts() is that we can continue to look in module search paths for a suitable module. Aborting an already-loaded module due to a version conflict would be too late.
author Matthew Wild <mwild1@gmail.com>
date Fri, 04 Feb 2022 14:20:00 +0000
parent 11578:dfc5d8f6788e
line wrap: on
line source

local record lib
	record ringbuffer
		find : function (ringbuffer, string) : integer
		discard : function (ringbuffer, integer) : boolean
		read : function (ringbuffer, integer, boolean) : string
		readuntil : function (ringbuffer, string) : string
		write : function (ringbuffer, string) : integer
		size : function (ringbuffer) : integer
		length : function (ringbuffer) : integer
		sub : function (ringbuffer, integer, integer) : string
		byte : function (ringbuffer, integer, integer) : integer...
		free : function (ringbuffer) : integer
	end

	new : function (integer) : ringbuffer
end

return lib