package lc.mecha.lang;

import java.util.List;

public class StringAlternator {
    public static void alternate(List<String> dst, String src) {
        int pos = 0;
        boolean isWhitespace = false;

        for (int i = 0; i < src.length(); i++) {
            char c = src.charAt(i);

            // Special case
            if (i == 0) {
                isWhitespace = Character.isWhitespace(c);
                continue;
            }

            if (Character.isWhitespace(c) == isWhitespace) {
                continue;
            }

            isWhitespace = !isWhitespace;
            dst.add(src.substring(pos, i));
            pos = i;
        }
        dst.add(src.substring(pos));
    }
}
