# Example `testclone.lua`

    --cloning a directory tree.

    require 'pl'

    p1 = [[examples]]

    p2 = [[copy/of/examples]]

    if not path.isfile 'examples/testclone.lua' then

    	return print 'please run this in the penlight folder (below examples)'

    end

    -- make a copy of the examples folder

    dir.clonetree(p1,p2,dir.copyfile)

    assert(path.isdir 'copy')

    print '---'

    t = os.time()

    print(lfs.touch('examples/testclone.lua',t,t+10))

    -- this should only update this file

    dir.clonetree(p1,p2,

    function(f1,f2)

      local t1 = path.getmtime(f1)

      local t2 = path.getmtime(f2)

      --print(f1,t1,f2,t2)

      if t1 > t2 then

    	dir.copyfile(f1,f2)

    	print(f1,f2,t1,t2)

      end

      return true

    end)

    -- and get rid of the whole copy directory, with subdirs

    dir.rmtree 'copy'

    assert(not path.exists 'copy')

generated by LDoc 1.3.12