，即值直接内嵌在当前字典中
-- 另一个是指示出一个文件路径的字段，此路径用于真正延迟加载的情况
-- 如果不指定第一个字段，那么就认为当前的字典可以解释出所需的值
parseDelayedYamlLoader :: FromJSON a =>
  Maybe Text
  -> Text
setExtIfNotExist :: String -> FilePath -> FilePath
setExtIfNotExist def_ext fp =
    if hasExtension fp
       then fp
       else fp <.> def_ext
setExtIfNotExist def_ext fp =
    if hasExtension fp
       then fp
       else fp <.> def_ext