isMixed method

bool isMixed (
  1. String input
)

Tests if input contains a mix of romaji and kana.

If this config's KanaKitConfig.passKanji is true, kanji will be ignored.

The input String cannot be null or empty.

isMixed('Abあア'); // true
isMixed('お腹A') // With KanaKitConfig.passKanji == true: true
isMixed('お腹A') // With KanaKitConfig.passKanji == false: false
isMixed('ab'); // false
isMixed('あア'); // false

Implementation

bool isMixed(String input) {
  assert(input != null);
  assert(input.isNotEmpty);

  final chars = input.chars;

  final hasRomaji = chars.any(_isCharRomaji);
  final hasKana = chars.any(_isCharHiragana) || chars.any(_isCharKatakana);
  final hasKanji = !(!config.passKanji ? chars.any(_isCharKanji) : false);

  return hasKana && hasRomaji && hasKanji;
}