LeXtract.TokenInterval (lextract v0.1.2)
View SourceRepresents a token position interval.
Fields
:start_token- Starting token index (0-based, inclusive):end_token- Ending token index (0-based, exclusive)
Examples
iex> interval = %LeXtract.TokenInterval{start_token: 0, end_token: 3}
iex> LeXtract.TokenInterval.length(interval)
3
Summary
Functions
Returns the number of tokens in the interval.
Creates a new token interval.
Checks if two token intervals overlap.
Types
@type t() :: %LeXtract.TokenInterval{ end_token: non_neg_integer(), start_token: non_neg_integer() }
Functions
@spec length(t()) :: non_neg_integer()
Returns the number of tokens in the interval.
Examples
iex> interval = LeXtract.TokenInterval.new(5, 10)
iex> LeXtract.TokenInterval.length(interval)
5
@spec new(non_neg_integer(), non_neg_integer()) :: t()
Creates a new token interval.
Examples
iex> LeXtract.TokenInterval.new(0, 5)
%LeXtract.TokenInterval{start_token: 0, end_token: 5}
Checks if two token intervals overlap.
Examples
iex> i1 = LeXtract.TokenInterval.new(0, 5)
iex> i2 = LeXtract.TokenInterval.new(3, 8)
iex> LeXtract.TokenInterval.overlaps?(i1, i2)
true
iex> i1 = LeXtract.TokenInterval.new(0, 5)
iex> i2 = LeXtract.TokenInterval.new(5, 10)
iex> LeXtract.TokenInterval.overlaps?(i1, i2)
false