aboutsummaryrefslogtreecommitdiff
path: root/internal/imap/folder.go
blob: e8458622439a1dbb68c83dd997deb950dc4705f7 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
package imap

import "strings"

type Folder struct {
	str       string
	delimiter string
}

func (f Folder) String() string {
	return f.str
}

func (f Folder) Append(other Folder) Folder {
	if f.delimiter != other.delimiter {
		panic("Delimiters do not match")
	}
	return Folder{
		str:       f.str + f.delimiter + other.str,
		delimiter: f.delimiter,
	}
}

func (cl *Client) folderName(path []string) Folder {
	return Folder{
		strings.Join(path, cl.delimiter),
		cl.delimiter,
	}
}

func (cl *Client) NewFolder(path []string) Folder {
	return cl.toplevel.Append(cl.folderName(path))
}
2&id=e6744a2aac310bff2680207845d121a42f04209b&follow=1'>Bump versionAntonio Terceiro1-1/+1 2015-05-03Fix usage of filtersAntonio Terceiro2-16/+24 - avoid accessing $? unless it is actually available - when calling a filter, make sure to release the mutex even if there is an exception during the filter handling. The long term solution is to drastically reorganize concurrency code. 2015-01-13Handle being given numbers as feed nameAntonio Terceiro2-0/+16 Force feed names to be strings because they will be handled as strings later. 2015-01-13Rakefile: remove wrong (and thus unused) flagAntonio Terceiro1-1/+0 2015-01-13Remove deprecated 'test suite' fileAntonio Terceiro1-12/+0 I want to always run all tests 2015-01-13Rakefile: re-indentAntonio Terceiro1-35/+35 2015-01-13Rakefile: run tests in verbose modeAntonio Terceiro1-1/+2 2014-10-071.2.3 releaseAntonio Terceiro1-1/+1 2014-10-07Fix cleanup of maildirsAntonio Terceiro3-1/+16 Thanks to Sylvain L. Sauvage for the bug report 2014-05-18feed2imap-test: reuse cache dir/protect configAntonio Terceiro1-1/+1 this reduces the noise in the output and helps testing feed updates 2014-02-13feed2imap-test: can now take a feed URL as argumentAntonio Terceiro1-3/+22 2014-02-13update .gitignoreAntonio Terceiro1-0/+2 2014-02-13fix dependency on ruby-feedparserAntonio Terceiro1-1/+1 2014-02-05Release 1.2.2Antonio Terceiro2-2/+2 2014-02-05config: fix regression with arrays as targetAntonio Terceiro2-1/+17 2013-08-28Fix teardown method nameAntonio Terceiro1-1/+1