             return CGSizeZero
         }
     }
-
-    /**
-    Returns true if there is no path.
-    */
+    
+    
+    /// Returns true if there is no path.
     public func isEmpty() -> Bool {
         return path == nil || path!.isEmpty()
     }
-
-    /**
-    The join style for joints on the shape's path.
-    */
+    
+    /// The join style for joints on the shape's path.
     public enum LineJoin {
         /// Specifies a miter line shape of the joints between connected segments of a stroked path.
         case Miter

            }
        }
    }

    /**
    This value defines the start of the path used to draw the stroked outline. The value must be in the range [0,1]
    with zero representing the start of the path and one the end. Values in between zero and one are interpolated
    linearly along the path length. Defaults to zero. Animatable.
    */
    public var strokeStart: Double {
        get { return Double(shapeLayer.strokeStart) }
        set(start) { shapeLayer.strokeStart = CGFloat(start); }
    }

    /**
    This value defines the end of the path used to draw the stroked outline. The value must be in the range [0,1]
    with zero representing the start of the path and one the end. Values in between zero and one are interpolated
    linearly along the path length. Defaults to 1.0. Animatable.
    */
    public var strokeEnd: Double {
        get { return Double(shapeLayer.strokeEnd) }
        set(end) { shapeLayer.strokeEnd = CGFloat(end); }
    }

    /**
    The miter limit used when stroking the path. Defaults to ten. Animatable. */
    @IBInspectable
    public var miterLimit: Double {
        get { return Double(shapeLayer.miterLimit) }
        set(miterLimit) { shapeLayer.miterLimit = CGFloat(miterLimit) }
    }
    
    /**
    The cap style used when stroking the path. Defaults to `Butt`.
    */
    public var lineCap: LineCap  {
        get {
            switch shapeLayer.lineCap {

        self.shapeLayer.path = p
    }
    
    /// Initializes a new C4Shape from a specified frame.
    ///
    /// Shapes initialized this way will not have a path.
    ///
    /// - parameter frame: The frame for the new shape.
    convenience public init(frame: C4Rect) {
        self.init()
        self.view.frame = CGRect(frame)
