module Shared::InlineTokens

Handles logic for class methods for Inline Tokens.

Public Instance Methods

consume(text) click to toggle source
# File lib/rosetta/tokens/shared/inline_tokens.rb, line 19
def consume(text)
  delimiter_index = text[delimiter_length..].index(delimiter_token) + delimiter_length

  source = text[0..delimiter_index]
  new(source)
end
delimiter_length() click to toggle source
# File lib/rosetta/tokens/shared/inline_tokens.rb, line 6
def delimiter_length
  delimiter_token.length
end
delimiter_token() click to toggle source
# File lib/rosetta/tokens/shared/inline_tokens.rb, line 26
def delimiter_token
  const_get('DELIMITER_TOKEN')
end
matches?(text) click to toggle source
# File lib/rosetta/tokens/shared/inline_tokens.rb, line 10
def matches?(text)
  text.start_with?(delimiter_token) && valid_delimiter?(text[delimiter_length..])
end
valid_delimiter?(text) click to toggle source
# File lib/rosetta/tokens/shared/inline_tokens.rb, line 14
def valid_delimiter?(text)
  delimiter_index = text.index(delimiter_token)
  !delimiter_index.nil?
end