process-line.ts 651 B

1234567891011121314151617181920212223242526272829303132333435
  1. export const processLine = (line: string): string | null => {
  2. if (!line) {
  3. return null;
  4. }
  5. const line_0: string = line[0];
  6. if (
  7. line_0 === '#'
  8. || line_0 === ' '
  9. || line_0 === '\r'
  10. || line_0 === '\n'
  11. || line_0 === '!'
  12. ) {
  13. return null;
  14. }
  15. const trimmed: string = line.trim();
  16. if (trimmed === '') {
  17. return null;
  18. }
  19. return trimmed;
  20. };
  21. export const processLineFromReadline = async (rl: AsyncGenerator<string>): Promise<string[]> => {
  22. const res: string[] = [];
  23. for await (const line of rl) {
  24. const l: string | null = processLine(line);
  25. if (l) {
  26. res.push(l);
  27. }
  28. }
  29. return res;
  30. };