lib/routeProc.ex

defmodule RouteProc do

  def folderField([]), do: []
  def folderField(folder), do: {:folder,FT.binary(folder)}

  def folderTypeField([]), do: {:folderType,FT.var('FT')}
  def folderTypeField('perm'), do: [{:folderType,FT.var('FT')},{:type,FT.atom(:permanent)}]
  def folderTypeField(ft), do: {:folderType,FT.binary(ft)}

  def usersField([]), do: []
  def usersField('[]'), do: []
  def usersField(users), do: {:users,FT.cons(:lists.map fn x -> FT.atom(x) end, users)}

  def callbackField([]), do: []
  def callbackField({mod,fun}), do: {:callback,FT.fun(FT.atom(mod),FT.atom(fun),2)}

end