set interface

pull/1/head
Emir Pasic 9 years ago
parent 76e326488d
commit 6b7ee831d9

@ -24,9 +24,14 @@ package hashset
import (
"fmt"
"github.com/emirpasic/gods/sets"
"strings"
)
func assertInterfaceImplementation() {
var _ sets.Interface = (*Set)(nil)
}
type Set struct {
items map[interface{}]struct{}
}

@ -0,0 +1,29 @@
/*
Copyright (c) Emir Pasic, All rights reserved.
This library is free software; you can redistribute it and/or
modify it under the terms of the GNU Lesser General Public
License as published by the Free Software Foundation; either
version 3.0 of the License, or (at your option) any later version.
This library is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
Lesser General Public License for more details.
You should have received a copy of the GNU Lesser General Public
License along with this library. See the file LICENSE included
with this distribution for more information.
*/
package sets
type Interface interface {
Add(items ...interface{})
Remove(items ...interface{})
Contains(items ...interface{}) bool
Empty() bool
Size() int
Clear()
Values() []interface{}
}
Loading…
Cancel
Save