From 7b02207537d35bfa1714bf8beafc921f717d100a Mon Sep 17 00:00:00 2001
From: 单军华
Date: Wed, 11 Jul 2018 10:47:42 +0800
Subject: [PATCH] 首次上传

---
 screendisplay/Pods/Masonry/Masonry/MASCompositeConstraint.m |  183 +++++++++++++++++++++++++++++++++++++++++++++
 1 files changed, 183 insertions(+), 0 deletions(-)

diff --git a/screendisplay/Pods/Masonry/Masonry/MASCompositeConstraint.m b/screendisplay/Pods/Masonry/Masonry/MASCompositeConstraint.m
new file mode 100755
index 0000000..2002a40
--- /dev/null
+++ b/screendisplay/Pods/Masonry/Masonry/MASCompositeConstraint.m
@@ -0,0 +1,183 @@
+//
+//  MASCompositeConstraint.m
+//  Masonry
+//
+//  Created by Jonas Budelmann on 21/07/13.
+//  Copyright (c) 2013 cloudling. All rights reserved.
+//
+
+#import "MASCompositeConstraint.h"
+#import "MASConstraint+Private.h"
+
+@interface MASCompositeConstraint () <MASConstraintDelegate>
+
+@property (nonatomic, strong) id mas_key;
+@property (nonatomic, strong) NSMutableArray *childConstraints;
+
+@end
+
+@implementation MASCompositeConstraint
+
+- (id)initWithChildren:(NSArray *)children {
+    self = [super init];
+    if (!self) return nil;
+
+    _childConstraints = [children mutableCopy];
+    for (MASConstraint *constraint in _childConstraints) {
+        constraint.delegate = self;
+    }
+
+    return self;
+}
+
+#pragma mark - MASConstraintDelegate
+
+- (void)constraint:(MASConstraint *)constraint shouldBeReplacedWithConstraint:(MASConstraint *)replacementConstraint {
+    NSUInteger index = [self.childConstraints indexOfObject:constraint];
+    NSAssert(index != NSNotFound, @"Could not find constraint %@", constraint);
+    [self.childConstraints replaceObjectAtIndex:index withObject:replacementConstraint];
+}
+
+- (MASConstraint *)constraint:(MASConstraint __unused *)constraint addConstraintWithLayoutAttribute:(NSLayoutAttribute)layoutAttribute {
+    id<MASConstraintDelegate> strongDelegate = self.delegate;
+    MASConstraint *newConstraint = [strongDelegate constraint:self addConstraintWithLayoutAttribute:layoutAttribute];
+    newConstraint.delegate = self;
+    [self.childConstraints addObject:newConstraint];
+    return newConstraint;
+}
+
+#pragma mark - NSLayoutConstraint multiplier proxies 
+
+- (MASConstraint * (^)(CGFloat))multipliedBy {
+    return ^id(CGFloat multiplier) {
+        for (MASConstraint *constraint in self.childConstraints) {
+            constraint.multipliedBy(multiplier);
+        }
+        return self;
+    };
+}
+
+- (MASConstraint * (^)(CGFloat))dividedBy {
+    return ^id(CGFloat divider) {
+        for (MASConstraint *constraint in self.childConstraints) {
+            constraint.dividedBy(divider);
+        }
+        return self;
+    };
+}
+
+#pragma mark - MASLayoutPriority proxy
+
+- (MASConstraint * (^)(MASLayoutPriority))priority {
+    return ^id(MASLayoutPriority priority) {
+        for (MASConstraint *constraint in self.childConstraints) {
+            constraint.priority(priority);
+        }
+        return self;
+    };
+}
+
+#pragma mark - NSLayoutRelation proxy
+
+- (MASConstraint * (^)(id, NSLayoutRelation))equalToWithRelation {
+    return ^id(id attr, NSLayoutRelation relation) {
+        for (MASConstraint *constraint in self.childConstraints.copy) {
+            constraint.equalToWithRelation(attr, relation);
+        }
+        return self;
+    };
+}
+
+#pragma mark - attribute chaining
+
+- (MASConstraint *)addConstraintWithLayoutAttribute:(NSLayoutAttribute)layoutAttribute {
+    [self constraint:self addConstraintWithLayoutAttribute:layoutAttribute];
+    return self;
+}
+
+#pragma mark - Animator proxy
+
+#if TARGET_OS_MAC && !(TARGET_OS_IPHONE || TARGET_OS_TV)
+
+- (MASConstraint *)animator {
+    for (MASConstraint *constraint in self.childConstraints) {
+        [constraint animator];
+    }
+    return self;
+}
+
+#endif
+
+#pragma mark - debug helpers
+
+- (MASConstraint * (^)(id))key {
+    return ^id(id key) {
+        self.mas_key = key;
+        int i = 0;
+        for (MASConstraint *constraint in self.childConstraints) {
+            constraint.key([NSString stringWithFormat:@"%@[%d]", key, i++]);
+        }
+        return self;
+    };
+}
+
+#pragma mark - NSLayoutConstraint constant setters
+
+- (void)setInsets:(MASEdgeInsets)insets {
+    for (MASConstraint *constraint in self.childConstraints) {
+        constraint.insets = insets;
+    }
+}
+
+- (void)setInset:(CGFloat)inset {
+    for (MASConstraint *constraint in self.childConstraints) {
+        constraint.inset = inset;
+    }
+}
+
+- (void)setOffset:(CGFloat)offset {
+    for (MASConstraint *constraint in self.childConstraints) {
+        constraint.offset = offset;
+    }
+}
+
+- (void)setSizeOffset:(CGSize)sizeOffset {
+    for (MASConstraint *constraint in self.childConstraints) {
+        constraint.sizeOffset = sizeOffset;
+    }
+}
+
+- (void)setCenterOffset:(CGPoint)centerOffset {
+    for (MASConstraint *constraint in self.childConstraints) {
+        constraint.centerOffset = centerOffset;
+    }
+}
+
+#pragma mark - MASConstraint
+
+- (void)activate {
+    for (MASConstraint *constraint in self.childConstraints) {
+        [constraint activate];
+    }
+}
+
+- (void)deactivate {
+    for (MASConstraint *constraint in self.childConstraints) {
+        [constraint deactivate];
+    }
+}
+
+- (void)install {
+    for (MASConstraint *constraint in self.childConstraints) {
+        constraint.updateExisting = self.updateExisting;
+        [constraint install];
+    }
+}
+
+- (void)uninstall {
+    for (MASConstraint *constraint in self.childConstraints) {
+        [constraint uninstall];
+    }
+}
+
+@end

--
Gitblit v1.8.0