         self.trailing = trailing
     }
 
-    public func filter(filter: LayoutEdge...) -> EdgeAnchors {
-        return self.filter(filter)
-    }
-
-    public func filter(filter: [LayoutEdge]) -> EdgeAnchors {
+    private func filter(filter: [LayoutEdge]) -> EdgeAnchors {
         var filteredAnchors = self
         filteredAnchors.includedEdges = includedEdges.filter { filter.contains($0) }
 


// MARK: - LayoutEdge

public enum LayoutEdge {

    case Top, Leading, Bottom, Trailing

    public static let Horizontal = [Leading, Trailing]
    public static let Vertical = [Top, Bottom]
    public static let All = [Top, Leading, Bottom, Trailing]

    public var axis: UILayoutConstraintAxis {
        switch self {
        case .Top, .Bottom:
            return .Vertical

        }
    }

    func transformConstant(c: CGFloat) -> CGFloat {
        switch self {
        case .Top, .Leading:
            return c
