/* * Copyright (C) Sapphirecode - All Rights Reserved * This file is part of console-app which is released under MIT. * See file 'LICENSE' for full license details. * Created by Timo Hocker , May 2020 */ import { OptionProcess } from '../Option'; export abstract class OptionSource { public abstract async parse(opt: OptionProcess[]): Promise; protected async assign_arg ( opt: OptionProcess, value: unknown ): Promise { try { opt.value = await opt.type_validation.to_type (value); opt.filled = true; } catch (e) { if (typeof opt.error_callback !== 'undefined') opt.error_callback (opt.name, value, e); } } }