Property definitions

markdown2 $ MdDelimiterProcessor :: defaultinit
# Custom delimiter processor for additional delimiters besides `_` and `*`
interface MdDelimiterProcessor

	# The character that marks the beginning of a delimited node
	#
	# Must not clash with anu built-in special characters.
	fun opening_delimiter: Char is abstract

	# The character that marks the ending of a delimited node
	#
	# Must not clash with anu built-in special characters.
	fun closing_delimiter: Char is abstract

	# Minimum number of delimiters characters that are needed to active this
	#
	# Must be at least one.
	fun min_length: Int is abstract

	# Determine how many (if any) of the delimiter characters should be used
	#
	# This allows implementations to decide how many characters to use based on the
	# properties of the delimiter runs.
	#
	# An implementation can also return 0 when it doesn't want to allow this particular
	# combination of delimiter runs.
	fun delimiter_use(opener, closer: MdDelimiter): Int is abstract

	# Process the matched delimiters
	#
	# For example, by wrapping the nodes between `opener` and `closer` in a new node,
	# or appending a new node after the opener.
	#
	# Note that removal of the delimiter from the delimiter nodes and unlinking
	# them is done by the caller.
	fun process(opener, closer: MdText, delimiter_use: Int) is abstract
end
lib/markdown2/markdown_inline_parsing.nit:1122,1--1157,3