Rivet.Utils.Module (rivet_utils v2.7.0)

Copy Markdown View Source

Summary

Functions

iex> :ip_id = id_key(:ips) iex> :ip_id = id_key(:ip) iex> :ip_id = id_key("ip") iex> :ip_id = id_key("long_prefix_ip")

iex> ModuleName = mod_basename(Core.Tools.ModuleName) iex> ModuleName = mod_basename(Core.Tools.ModuleName, :module) iex> "module_name" = mod_basename(Core.Tools.ModuleName, :string) iex> :module_name = mod_basename(Core.Tools.ModuleName, :atom)

iex> :module_id = mod_id_key(Some.Long.Modules)

iex> Core.Db.IsParent = mod_parent(Core.Db.IsParent.Log) iex> Core.Db.IsParent = mod_parent(Core.Db.IsParent.Log, :module) iex> ["Core", "Db", "IsParent"] = mod_parent(Core.Db.IsParent.Log, :list)

iex> :module_id = mod_to_id_key(Core.Tools.Module) iex> :module_id = mod_to_idname(Core.Tools.Module)

Note: "name" in name string implies snake, not module/pascal case

Functions

id_key(input)

iex> :ip_id = id_key(:ips) iex> :ip_id = id_key(:ip) iex> :ip_id = id_key("ip") iex> :ip_id = id_key("long_prefix_ip")

mod_basename(mod, output \\ :module)

iex> ModuleName = mod_basename(Core.Tools.ModuleName) iex> ModuleName = mod_basename(Core.Tools.ModuleName, :module) iex> "module_name" = mod_basename(Core.Tools.ModuleName, :string) iex> :module_name = mod_basename(Core.Tools.ModuleName, :atom)

mod_id_key(input)

iex> :module_id = mod_id_key(Some.Long.Modules)

mod_parent(mod, output_case \\ :module)

iex> Core.Db.IsParent = mod_parent(Core.Db.IsParent.Log) iex> Core.Db.IsParent = mod_parent(Core.Db.IsParent.Log, :module) iex> ["Core", "Db", "IsParent"] = mod_parent(Core.Db.IsParent.Log, :list)

mod_to_id_key(mod)

iex> :module_id = mod_to_id_key(Core.Tools.Module) iex> :module_id = mod_to_idname(Core.Tools.Module)

mod_to_idname(mod)

See Rivet.Utils.Module.mod_to_id_key/1.

mod_to_name(mod, output \\ :atom)

Note: "name" in name string implies snake, not module/pascal case

iex> :narf = mod_to_name(Core.Tools.Narf) iex> "narf" = mod_to_name(Core.Tools.Narf, :string)