# shellcheck shell=dash

# enclosing character list string

# TODO: Change it as a on-demand module -- It is only used in theme module

___x_cmd_eclist___main(){
    local op="$1"
    case "$op" in
        dump|demp_|read)
            shift; ___x_cmd_eclist_"$op" "$@" ;;
        *)  return 1 ;;
    esac
}

___x_cmd_eclist_dump(){
    local x_
    ___x_cmd_eclist_dump_ "$@"
    printf "%s\n" "$x_"
}

___x_cmd_eclist_dump_(){
    local IFS="$1"; shift
    x_="${IFS}$*${IFS}"
}

___x_cmd_eclist_read(){
    local content="$1";       shift 1
    local IFS="${content%"${content#?}"}"
    local x_
    read -r x_ "$@" x_ <<A
$content
A
}
