rclone: github.com/ncw/rclone/fs/march Index | Files

package march

import "github.com/ncw/rclone/fs/march"

Package march traverses two directories in lock step


Package Files


type March Uses

type March struct {
    // parameters
    Ctx                    context.Context // context for background goroutines
    Fdst                   fs.Fs           // source Fs
    Fsrc                   fs.Fs           // dest Fs
    Dir                    string          // directory
    NoTraverse             bool            // don't traverse the destination
    SrcIncludeAll          bool            // don't include all files in the src
    DstIncludeAll          bool            // don't include all files in the destination
    Callback               Marcher         // object to call with results
    NoCheckDest            bool            // transfer all objects regardless without checking dst
    NoUnicodeNormalization bool            // don't normalize unicode characters in filenames
    // contains filtered or unexported fields

March holds the data used to traverse two Fs simultaneously, calling Callback for each match

func (*March) Run Uses

func (m *March) Run() error

Run starts the matching process off

type Marcher Uses

type Marcher interface {
    // SrcOnly is called for a DirEntry found only in the source
    SrcOnly(src fs.DirEntry) (recurse bool)
    // DstOnly is called for a DirEntry found only in the destination
    DstOnly(dst fs.DirEntry) (recurse bool)
    // Match is called for a DirEntry found both in the source and destination
    Match(ctx context.Context, dst, src fs.DirEntry) (recurse bool)

Marcher is called on each match

Package march imports 12 packages (graph) and is imported by 14 packages. Updated 2020-08-03. Refresh now. Tools for package owners.