#!/usr/bin/env bash
#
# Helper functions for env scripts.
#
# Generated by {{generator}} on {{today}},
# from a template provided by {{ pkg.name }}.
#


#######################################
# Assert that the shell is sourced
# Arguments:
#   shell_name - $0 of caller shell.
#   source_name - $BASH_SOURCE[0] of caller shell.
#######################################
assert_sourced() {
  local shell_name=$1
  local source_name=$2
  if [ ${shell_name} = ${source_name} ]
  then # Seems executing itself.
    echo "[Error] Must be sourced. Please try \`source ${shell_name}\`." 1>&2
    exit 1
  fi
}

#######################################
# Export variable
# Arguments:
#   key - Key to export.
#   val - Value to export.
#######################################
export_variable() {
  local key=$1
  local val=$2
  echo "  ${key}: ${val}"
  export ${key}=${val}
}


#######################################
# Export variable
# Arguments:
#   prefix - Prefix of prompt.
#######################################
set_prompt_prefix() {
  prefix=$1
  if [[ -z "${PS1_MAIN}" ]]
  then
    export PS1_MAIN=${PS1}
  fi
  export PS1_PREFIX=${prefix}
  export PS1="(${PS1_PREFIX}) ${PS1_MAIN}"
}

