#!/usr/bin/env bash

common::xargs() {

  # apply a function to each line of input
  # have to read all, then apply incase function clobbers stdin

  local __items=()
  local __item
  while read -r __item; do
    __items+=( "$__item" )
  done

  for __item in "${__items[@]}"; do
    "$@" "$__item"
  done
}

common::xargs "$@"
