Samond Classes Library 1.2.6-STABLE build 219
SCTextIndex.h
Go to the documentation of this file.
1 //
2 // SCTextIndex.h
3 // scl
4 //
5 // Created by Viacheslav Smolensky on 06.02.13.
6 // Copyright (c) 2007 - 2018 by Samond Development Corporation. All rights reserved.
7 //
8 
22 #import <Foundation/Foundation.h>
24 #import <scl/SCService.h>
25 
26 #pragma mark -
27 #pragma mark Class Constants
28 
37 #define SCTextIndexClass @"SCTextIndex"
38 
39 
54 @interface SCTextIndex : SCService {
55  SCIndex _line; // String number
56  SCIndex _character; // Character number in string
57 }
58 
68 @property (nonatomic, readwrite, assign) SCIndex line;
69 
74 @property (nonatomic, readwrite, assign) SCIndex character;
75 
78 #pragma mark -
79 #pragma mark Creating Text Indexes
80 + (instancetype)textIndexWithCoder:(NSCoder *)coder;
81 + (instancetype)textIndexWithContentsOfSerializedFile:(NSString *)path;
82 + (instancetype)textIndexWithDataDictionary:(NSDictionary *)dictionary;
83 + (instancetype)textIndexWithDataDictionaryFromFile:(NSString *)path;
84 + (instancetype)textIndexWithStream:(SCStream *)stream;
85 + (instancetype)textIndexWithFileStream:(NSString *)path;
86 + (instancetype)textIndexWithData:(NSData *)data;
87 + (instancetype)textIndexWithContentsOfFile:(NSString *)path;
88 + (instancetype)textIndexWithContentsOfURL:(NSURL *)url;
89 + (instancetype)textIndexWithContentsOfURLString:(NSString *)urlString;
90 
91 + (instancetype)textIndexWithLine:(SCIndex)line character:(SCIndex)character;
92 + (instancetype)textIndexWithTextIndex:(SCTextIndex *)textIndex;
93 + (instancetype)textIndex;
94 
95 #pragma mark -
96 #pragma mark Initializing Text Indexes
97 - (instancetype)initWithLine:(SCIndex)line character:(SCIndex)character;
98 - (instancetype)initWithTextIndex:(SCTextIndex *)textIndex;
99 - (instancetype)init;
100 
101 #pragma mark -
102 #pragma mark Copying Text Indexes
103 - (void)setLine:(SCIndex)line character:(SCIndex)character;
104 - (void)setTextIndex:(SCTextIndex *)index;
105 
106 #pragma mark -
107 #pragma mark Comparing Text Indexes
108 - (BOOL)isEqualToTextIndex:(SCTextIndex *)index;
109 - (BOOL)isEqualTo:(id)object;
110 - (BOOL)isEqual:(id)object;
111 - (BOOL)isEqualToLine:(SCIndex)line character:(SCIndex)character;
112 
113 @end
114 
115 #pragma mark -
116 #pragma mark Functions
117 
122 SCTextIndex *SCMakeTextIndex( SCIndex line, SCIndex character);
SCTextIndex * SCMakeTextIndex(SCIndex line, SCIndex character)
Definition: SCTextIndex.m:556
Text index class.
Definition: SCTextIndex.h:54
Class SCService header file.
Collection types protocols header file.
Parent class of all library service classes.
Definition: SCService.h:52
NSUInteger SCIndex
Definition: SCCollectionProtocols.h:53
Abstract parent class of the stream classes hierarchy.
Definition: SCStream.h:224