Samond Classes Library 1.2.6-STABLE build 219
NSObject+SCObject.h
Go to the documentation of this file.
1 //
2 // NSObject+SCObject.h
3 // scl
4 //
5 // Created by Viacheslav Smolensky on 20.03.17.
6 // Copyright (c) 2007 - 2018 by Samond Development Corporation. All rights reserved.
7 //
8 
24 #import <Foundation/Foundation.h>
25 #import <scl/SCCoding.h>
26 #import <scl/SCDictionaring.h>
27 #import <scl/SCStreaming.h>
28 #import <scl/SCCollectioning.h>
29 #import <scl/SCDating.h>
30 
31 #pragma mark -
32 #pragma mark Class Constants
33 
42 #define NSObjectClass @"NSObject"
43 
48 #define SC_KEY_CLASS_NAME @"OBJC_ClassName"
49 
50 @class SCData;
51 
68 
69 #pragma mark -
70 #pragma mark Serialized Files Support
71 - (instancetype)initWithCoder:(NSCoder *)coder;
72 - (instancetype)initWithContentsOfSerializedFile:(NSString *)path;
73 - (void)encodeWithCoder:(NSCoder *)coder;
74 - (BOOL)writeContentsToSerializedFile:(NSString *)path;
75 
76 #pragma mark -
77 #pragma mark Data Dictinaries Support
78 - (instancetype)initWithDataDictionary:(NSDictionary *)dictionary;
79 - (instancetype)initWithDataDictionaryFromFile:(NSString *)path;
80 - (void)writeToDataDictionary:(NSMutableDictionary *)dictionary;
81 - (void)writeToDataDictionaryFile:(NSString *)path atomically:(BOOL)atomically;
82 - (void)writeToDataDictionaryFile:(NSString *)path;
83 - (NSDictionary *)dataDictionary;
84 
85 #pragma mark -
86 #pragma mark Streams Support
87 - (instancetype)initWithStream:(SCStream *)stream;
88 - (instancetype)initWithFileStream:(NSString *)path;
89 - (void)writeToStream:(SCStream *)stream;
90 - (void)writeToFileStream:(NSString *)path;
91 - (void)appendToFileStream:(NSString *)path;
92 
93 #pragma mark -
94 #pragma mark Collections Support
95 - (id)copyObject;
96 - (SCComparisonResult)compareWithObject:(id<SCCollectioning>)object;
97 
98 #pragma mark -
99 #pragma mark Interaction with Data Objects
100 - (instancetype)initWithData:(NSData *)data;
101 - (instancetype)initWithDataWrapper:(SCData *)data;
102 - (instancetype)initWithContentsOfFile:(NSString *)path;
103 - (instancetype)initWithContentsOfURL:(NSURL *)url;
104 - (instancetype)initWithContentsOfURLString:(NSString *)urlString;
105 - (void)writeToData:(NSMutableData *)data;
106 - (BOOL)writeToFile:(NSString *)path;
107 - (BOOL)writeToURL:(NSURL *)url;
108 - (BOOL)writeToURLString:(NSString *)urlString;
109 - (NSData *)data;
110 
111 @end
Wrapper class for data objects.
Definition: SCData.h:59
Protocol SCCollectioning header file.
Protocol SCDating header file.
Standard protocol NSCoding extention protocol.
Definition: SCCoding.h:42
NSDictionary * dataDictionary()
Protocol SCCoding header file.
SCComparisonResult
Definition: SCCollectioning.h:36
Protocol of methods for data exchanging between class instances and classes NSDictionary and NSMutabl...
Definition: SCDictionaring.h:44
Data objects communications protocol.
Definition: SCDating.h:45
Collections communications protocol.
Definition: SCCollectioning.h:79
Streams communications protocol.
Definition: SCStreaming.h:43
Protocol SCStreaming header file.
Standard class NSObject functionality extending category.
Definition: NSObject+SCObject.h:67
Protocol SCDictionaring header file.
Abstract parent class of the stream classes hierarchy.
Definition: SCStream.h:224