as3corelib 0.1.0 → 0.85.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (115) hide show
  1. data/Gemfile +1 -4
  2. data/Gemfile.lock +7 -4
  3. data/README.textile +20 -10
  4. data/Rakefile +32 -2
  5. data/as3corelib.gemspec +13 -11
  6. data/lib/as3corelib.rb +10 -4
  7. data/lib/as3corelib/version.rb +4 -0
  8. metadata +31 -121
  9. data/build/build.properties +0 -48
  10. data/build/build.xml +0 -104
  11. data/examples/JSONExample/JSONExample.mxml +0 -73
  12. data/src/com/adobe/air/crypto/EncryptionKeyGenerator.as +0 -313
  13. data/src/com/adobe/air/filesystem/FileMonitor.as +0 -245
  14. data/src/com/adobe/air/filesystem/FileUtil.as +0 -63
  15. data/src/com/adobe/air/filesystem/VolumeMonitor.as +0 -184
  16. data/src/com/adobe/air/filesystem/events/FileMonitorEvent.as +0 -61
  17. data/src/com/adobe/air/logging/FileTarget.as +0 -95
  18. data/src/com/adobe/air/net/ResourceCache.as +0 -165
  19. data/src/com/adobe/air/net/events/ResourceCacheEvent.as +0 -70
  20. data/src/com/adobe/crypto/HMAC.as +0 -127
  21. data/src/com/adobe/crypto/MD5.as +0 -281
  22. data/src/com/adobe/crypto/MD5Stream.as +0 -402
  23. data/src/com/adobe/crypto/SHA1.as +0 -289
  24. data/src/com/adobe/crypto/SHA224.as +0 -257
  25. data/src/com/adobe/crypto/SHA256.as +0 -261
  26. data/src/com/adobe/crypto/WSSEUsernameToken.as +0 -114
  27. data/src/com/adobe/errors/IllegalStateError.as +0 -63
  28. data/src/com/adobe/fileformats/vcard/Address.as +0 -47
  29. data/src/com/adobe/fileformats/vcard/Email.as +0 -39
  30. data/src/com/adobe/fileformats/vcard/Phone.as +0 -39
  31. data/src/com/adobe/fileformats/vcard/VCard.as +0 -54
  32. data/src/com/adobe/fileformats/vcard/VCardParser.as +0 -246
  33. data/src/com/adobe/images/BitString.as +0 -39
  34. data/src/com/adobe/images/JPGEncoder.as +0 -648
  35. data/src/com/adobe/images/PNGEncoder.as +0 -141
  36. data/src/com/adobe/net/DynamicURLLoader.as +0 -55
  37. data/src/com/adobe/net/IURIResolver.as +0 -76
  38. data/src/com/adobe/net/MimeTypeMap.as +0 -200
  39. data/src/com/adobe/net/URI.as +0 -2466
  40. data/src/com/adobe/net/URIEncodingBitmap.as +0 -139
  41. data/src/com/adobe/net/proxies/RFC2817Socket.as +0 -198
  42. data/src/com/adobe/protocols/dict/Database.as +0 -66
  43. data/src/com/adobe/protocols/dict/Definition.as +0 -71
  44. data/src/com/adobe/protocols/dict/Dict.as +0 -360
  45. data/src/com/adobe/protocols/dict/DictionaryServer.as +0 -60
  46. data/src/com/adobe/protocols/dict/MatchStrategy.as +0 -66
  47. data/src/com/adobe/protocols/dict/Response.as +0 -71
  48. data/src/com/adobe/protocols/dict/events/ConnectedEvent.as +0 -53
  49. data/src/com/adobe/protocols/dict/events/DatabaseEvent.as +0 -67
  50. data/src/com/adobe/protocols/dict/events/DefinitionEvent.as +0 -70
  51. data/src/com/adobe/protocols/dict/events/DefinitionHeaderEvent.as +0 -69
  52. data/src/com/adobe/protocols/dict/events/DictionaryServerEvent.as +0 -69
  53. data/src/com/adobe/protocols/dict/events/DisconnectedEvent.as +0 -55
  54. data/src/com/adobe/protocols/dict/events/ErrorEvent.as +0 -80
  55. data/src/com/adobe/protocols/dict/events/MatchEvent.as +0 -67
  56. data/src/com/adobe/protocols/dict/events/MatchStrategiesEvent.as +0 -70
  57. data/src/com/adobe/protocols/dict/events/NoMatchEvent.as +0 -54
  58. data/src/com/adobe/protocols/dict/util/CompleteResponseEvent.as +0 -68
  59. data/src/com/adobe/protocols/dict/util/SocketHelper.as +0 -81
  60. data/src/com/adobe/serialization/json/JSON.as +0 -86
  61. data/src/com/adobe/serialization/json/JSONDecoder.as +0 -327
  62. data/src/com/adobe/serialization/json/JSONEncoder.as +0 -312
  63. data/src/com/adobe/serialization/json/JSONParseError.as +0 -87
  64. data/src/com/adobe/serialization/json/JSONToken.as +0 -104
  65. data/src/com/adobe/serialization/json/JSONTokenType.as +0 -69
  66. data/src/com/adobe/serialization/json/JSONTokenizer.as +0 -702
  67. data/src/com/adobe/utils/ArrayUtil.as +0 -187
  68. data/src/com/adobe/utils/DateUtil.as +0 -701
  69. data/src/com/adobe/utils/DictionaryUtil.as +0 -87
  70. data/src/com/adobe/utils/IntUtil.as +0 -99
  71. data/src/com/adobe/utils/NumberFormatter.as +0 -74
  72. data/src/com/adobe/utils/StringUtil.as +0 -239
  73. data/src/com/adobe/utils/XMLUtil.as +0 -168
  74. data/src/com/adobe/webapis/ServiceBase.as +0 -48
  75. data/src/com/adobe/webapis/URLLoaderBase.as +0 -108
  76. data/src/com/adobe/webapis/events/ServiceEvent.as +0 -82
  77. data/tests/src/CoreLibTestRunner-app.xml +0 -135
  78. data/tests/src/CoreLibTestRunner.as +0 -138
  79. data/tests/src/CoreLibTestRunner.mxml +0 -46
  80. data/tests/src/com/adobe/air/crypto/EncryptionKeyGeneratorTest.as +0 -176
  81. data/tests/src/com/adobe/air/filesystem/FileMonitorTest.as +0 -63
  82. data/tests/src/com/adobe/air/filesystem/VolumeMonitorTest.as +0 -57
  83. data/tests/src/com/adobe/air/filesystem/events/FileMonitorEventTest.as +0 -59
  84. data/tests/src/com/adobe/air/net/events/ResourceCacheEventTest.as +0 -72
  85. data/tests/src/com/adobe/crypto/HMACMD5Test.as +0 -134
  86. data/tests/src/com/adobe/crypto/HMACSHA1Test.as +0 -138
  87. data/tests/src/com/adobe/crypto/MD5Test.as +0 -82
  88. data/tests/src/com/adobe/crypto/SHA1Test.as +0 -151
  89. data/tests/src/com/adobe/crypto/SHA224Test.as +0 -104
  90. data/tests/src/com/adobe/crypto/SHA256Test.as +0 -116
  91. data/tests/src/com/adobe/crypto/WSSEUsernameTokenTest.as +0 -87
  92. data/tests/src/com/adobe/images/JPGEncoderTest.as +0 -54
  93. data/tests/src/com/adobe/images/PNGEncoderTest.as +0 -54
  94. data/tests/src/com/adobe/net/URITest.as +0 -589
  95. data/tests/src/com/adobe/protocols/events/ConnectedEventTest.as +0 -59
  96. data/tests/src/com/adobe/protocols/events/DatabaseEventTest.as +0 -62
  97. data/tests/src/com/adobe/protocols/events/DefinitionEventTest.as +0 -61
  98. data/tests/src/com/adobe/protocols/events/DefinitionHeaderEventTest.as +0 -61
  99. data/tests/src/com/adobe/protocols/events/DictionaryServerEventTest.as +0 -61
  100. data/tests/src/com/adobe/protocols/events/DisconnectedEventTest.as +0 -59
  101. data/tests/src/com/adobe/protocols/events/ErrorEventTest.as +0 -63
  102. data/tests/src/com/adobe/protocols/events/MatchEventTest.as +0 -61
  103. data/tests/src/com/adobe/protocols/events/MatchStrategiesEventTest.as +0 -61
  104. data/tests/src/com/adobe/protocols/events/NoMatchEventTest.as +0 -58
  105. data/tests/src/com/adobe/protocols/util/CompletedResponseEventTest.as +0 -60
  106. data/tests/src/com/adobe/serialization/json/JSONTest.as +0 -522
  107. data/tests/src/com/adobe/serialization/json/SimpleClass.as +0 -85
  108. data/tests/src/com/adobe/utils/ArrayUtilTest.as +0 -173
  109. data/tests/src/com/adobe/utils/DateUtilTest.as +0 -436
  110. data/tests/src/com/adobe/utils/DictionaryUtilTest.as +0 -93
  111. data/tests/src/com/adobe/utils/IntUtilTest.as +0 -73
  112. data/tests/src/com/adobe/utils/NumberFormatterTest.as +0 -70
  113. data/tests/src/com/adobe/utils/StringUtilTest.as +0 -304
  114. data/tests/src/com/adobe/utils/XMLUtilTest.as +0 -101
  115. data/tests/src/com/adobe/webapis/events/ServiceEventTest.as +0 -66
@@ -1,87 +0,0 @@
1
- /*
2
- Copyright (c) 2008, Adobe Systems Incorporated
3
- All rights reserved.
4
-
5
- Redistribution and use in source and binary forms, with or without
6
- modification, are permitted provided that the following conditions are
7
- met:
8
-
9
- * Redistributions of source code must retain the above copyright notice,
10
- this list of conditions and the following disclaimer.
11
-
12
- * Redistributions in binary form must reproduce the above copyright
13
- notice, this list of conditions and the following disclaimer in the
14
- documentation and/or other materials provided with the distribution.
15
-
16
- * Neither the name of Adobe Systems Incorporated nor the names of its
17
- contributors may be used to endorse or promote products derived from
18
- this software without specific prior written permission.
19
-
20
- THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS
21
- IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
22
- THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
23
- PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR
24
- CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
25
- EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
26
- PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
27
- PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
28
- LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
29
- NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
30
- SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
31
- */
32
-
33
- package com.adobe.utils
34
- {
35
- import flash.utils.Dictionary;
36
-
37
- public class DictionaryUtil
38
- {
39
-
40
- /**
41
- * Returns an Array of all keys within the specified dictionary.
42
- *
43
- * @param d The Dictionary instance whose keys will be returned.
44
- *
45
- * @return Array of keys contained within the Dictionary
46
- *
47
- * @langversion ActionScript 3.0
48
- * @playerversion Flash 9.0
49
- * @tiptext
50
- */
51
- public static function getKeys(d:Dictionary):Array
52
- {
53
- var a:Array = new Array();
54
-
55
- for (var key:Object in d)
56
- {
57
- a.push(key);
58
- }
59
-
60
- return a;
61
- }
62
-
63
- /**
64
- * Returns an Array of all values within the specified dictionary.
65
- *
66
- * @param d The Dictionary instance whose values will be returned.
67
- *
68
- * @return Array of values contained within the Dictionary
69
- *
70
- * @langversion ActionScript 3.0
71
- * @playerversion Flash 9.0
72
- * @tiptext
73
- */
74
- public static function getValues(d:Dictionary):Array
75
- {
76
- var a:Array = new Array();
77
-
78
- for each (var value:Object in d)
79
- {
80
- a.push(value);
81
- }
82
-
83
- return a;
84
- }
85
-
86
- }
87
- }
@@ -1,99 +0,0 @@
1
- /*
2
- Copyright (c) 2008, Adobe Systems Incorporated
3
- All rights reserved.
4
-
5
- Redistribution and use in source and binary forms, with or without
6
- modification, are permitted provided that the following conditions are
7
- met:
8
-
9
- * Redistributions of source code must retain the above copyright notice,
10
- this list of conditions and the following disclaimer.
11
-
12
- * Redistributions in binary form must reproduce the above copyright
13
- notice, this list of conditions and the following disclaimer in the
14
- documentation and/or other materials provided with the distribution.
15
-
16
- * Neither the name of Adobe Systems Incorporated nor the names of its
17
- contributors may be used to endorse or promote products derived from
18
- this software without specific prior written permission.
19
-
20
- THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS
21
- IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
22
- THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
23
- PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR
24
- CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
25
- EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
26
- PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
27
- PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
28
- LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
29
- NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
30
- SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
31
- */
32
- package com.adobe.utils {
33
-
34
- import flash.utils.Endian;
35
-
36
- /**
37
- * Contains reusable methods for operations pertaining
38
- * to int values.
39
- */
40
- public class IntUtil {
41
-
42
- /**
43
- * Rotates x left n bits
44
- *
45
- * @langversion ActionScript 3.0
46
- * @playerversion Flash 9.0
47
- * @tiptext
48
- */
49
- public static function rol ( x:int, n:int ):int {
50
- return ( x << n ) | ( x >>> ( 32 - n ) );
51
- }
52
-
53
- /**
54
- * Rotates x right n bits
55
- *
56
- * @langversion ActionScript 3.0
57
- * @playerversion Flash 9.0
58
- * @tiptext
59
- */
60
- public static function ror ( x:int, n:int ):uint {
61
- var nn:int = 32 - n;
62
- return ( x << nn ) | ( x >>> ( 32 - nn ) );
63
- }
64
-
65
- /** String for quick lookup of a hex character based on index */
66
- private static var hexChars:String = "0123456789abcdef";
67
-
68
- /**
69
- * Outputs the hex value of a int, allowing the developer to specify
70
- * the endinaness in the process. Hex output is lowercase.
71
- *
72
- * @param n The int value to output as hex
73
- * @param bigEndian Flag to output the int as big or little endian
74
- * @return A string of length 8 corresponding to the
75
- * hex representation of n ( minus the leading "0x" )
76
- * @langversion ActionScript 3.0
77
- * @playerversion Flash 9.0
78
- * @tiptext
79
- */
80
- public static function toHex( n:int, bigEndian:Boolean = false ):String {
81
- var s:String = "";
82
-
83
- if ( bigEndian ) {
84
- for ( var i:int = 0; i < 4; i++ ) {
85
- s += hexChars.charAt( ( n >> ( ( 3 - i ) * 8 + 4 ) ) & 0xF )
86
- + hexChars.charAt( ( n >> ( ( 3 - i ) * 8 ) ) & 0xF );
87
- }
88
- } else {
89
- for ( var x:int = 0; x < 4; x++ ) {
90
- s += hexChars.charAt( ( n >> ( x * 8 + 4 ) ) & 0xF )
91
- + hexChars.charAt( ( n >> ( x * 8 ) ) & 0xF );
92
- }
93
- }
94
-
95
- return s;
96
- }
97
- }
98
-
99
- }
@@ -1,74 +0,0 @@
1
- /*
2
- Copyright (c) 2008, Adobe Systems Incorporated
3
- All rights reserved.
4
-
5
- Redistribution and use in source and binary forms, with or without
6
- modification, are permitted provided that the following conditions are
7
- met:
8
-
9
- * Redistributions of source code must retain the above copyright notice,
10
- this list of conditions and the following disclaimer.
11
-
12
- * Redistributions in binary form must reproduce the above copyright
13
- notice, this list of conditions and the following disclaimer in the
14
- documentation and/or other materials provided with the distribution.
15
-
16
- * Neither the name of Adobe Systems Incorporated nor the names of its
17
- contributors may be used to endorse or promote products derived from
18
- this software without specific prior written permission.
19
-
20
- THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS
21
- IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
22
- THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
23
- PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR
24
- CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
25
- EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
26
- PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
27
- PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
28
- LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
29
- NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
30
- SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
31
- */
32
-
33
- package com.adobe.utils
34
- {
35
-
36
- /**
37
- * Class that contains static utility methods for formatting Numbers
38
- *
39
- * @langversion ActionScript 3.0
40
- * @playerversion Flash 9.0
41
- * @tiptext
42
- *
43
- * @see #mx.formatters.NumberFormatter
44
- */
45
- public class NumberFormatter
46
- {
47
-
48
- /**
49
- * Formats a number to include a leading zero if it is a single digit
50
- * between -1 and 10.
51
- *
52
- * @param n The number that will be formatted
53
- *
54
- * @return A string with single digits between -1 and 10 padded with a
55
- * leading zero.
56
- *
57
- * @langversion ActionScript 3.0
58
- * @playerversion Flash 9.0
59
- * @tiptext
60
- */
61
- public static function addLeadingZero(n:Number):String
62
- {
63
- var out:String = String(n);
64
-
65
- if(n < 10 && n > -1)
66
- {
67
- out = "0" + out;
68
- }
69
-
70
- return out;
71
- }
72
-
73
- }
74
- }
@@ -1,239 +0,0 @@
1
- /*
2
- Copyright (c) 2008, Adobe Systems Incorporated
3
- All rights reserved.
4
-
5
- Redistribution and use in source and binary forms, with or without
6
- modification, are permitted provided that the following conditions are
7
- met:
8
-
9
- * Redistributions of source code must retain the above copyright notice,
10
- this list of conditions and the following disclaimer.
11
-
12
- * Redistributions in binary form must reproduce the above copyright
13
- notice, this list of conditions and the following disclaimer in the
14
- documentation and/or other materials provided with the distribution.
15
-
16
- * Neither the name of Adobe Systems Incorporated nor the names of its
17
- contributors may be used to endorse or promote products derived from
18
- this software without specific prior written permission.
19
-
20
- THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS
21
- IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
22
- THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
23
- PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR
24
- CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
25
- EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
26
- PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
27
- PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
28
- LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
29
- NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
30
- SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
31
- */
32
-
33
- package com.adobe.utils
34
- {
35
-
36
- /**
37
- * Class that contains static utility methods for manipulating Strings.
38
- *
39
- * @langversion ActionScript 3.0
40
- * @playerversion Flash 9.0
41
- * @tiptext
42
- */
43
- public class StringUtil
44
- {
45
-
46
-
47
- /**
48
- * Does a case insensitive compare or two strings and returns true if
49
- * they are equal.
50
- *
51
- * @param s1 The first string to compare.
52
- *
53
- * @param s2 The second string to compare.
54
- *
55
- * @returns A boolean value indicating whether the strings' values are
56
- * equal in a case sensitive compare.
57
- *
58
- * @langversion ActionScript 3.0
59
- * @playerversion Flash 9.0
60
- * @tiptext
61
- */
62
- public static function stringsAreEqual(s1:String, s2:String,
63
- caseSensitive:Boolean):Boolean
64
- {
65
- if(caseSensitive)
66
- {
67
- return (s1 == s2);
68
- }
69
- else
70
- {
71
- return (s1.toUpperCase() == s2.toUpperCase());
72
- }
73
- }
74
-
75
- /**
76
- * Removes whitespace from the front and the end of the specified
77
- * string.
78
- *
79
- * @param input The String whose beginning and ending whitespace will
80
- * will be removed.
81
- *
82
- * @returns A String with whitespace removed from the begining and end
83
- *
84
- * @langversion ActionScript 3.0
85
- * @playerversion Flash 9.0
86
- * @tiptext
87
- */
88
- public static function trim(input:String):String
89
- {
90
- return StringUtil.ltrim(StringUtil.rtrim(input));
91
- }
92
-
93
- /**
94
- * Removes whitespace from the front of the specified string.
95
- *
96
- * @param input The String whose beginning whitespace will will be removed.
97
- *
98
- * @returns A String with whitespace removed from the begining
99
- *
100
- * @langversion ActionScript 3.0
101
- * @playerversion Flash 9.0
102
- * @tiptext
103
- */
104
- public static function ltrim(input:String):String
105
- {
106
- var size:Number = input.length;
107
- for(var i:Number = 0; i < size; i++)
108
- {
109
- if(input.charCodeAt(i) > 32)
110
- {
111
- return input.substring(i);
112
- }
113
- }
114
- return "";
115
- }
116
-
117
- /**
118
- * Removes whitespace from the end of the specified string.
119
- *
120
- * @param input The String whose ending whitespace will will be removed.
121
- *
122
- * @returns A String with whitespace removed from the end
123
- *
124
- * @langversion ActionScript 3.0
125
- * @playerversion Flash 9.0
126
- * @tiptext
127
- */
128
- public static function rtrim(input:String):String
129
- {
130
- var size:Number = input.length;
131
- for(var i:Number = size; i > 0; i--)
132
- {
133
- if(input.charCodeAt(i - 1) > 32)
134
- {
135
- return input.substring(0, i);
136
- }
137
- }
138
-
139
- return "";
140
- }
141
-
142
- /**
143
- * Determines whether the specified string begins with the spcified prefix.
144
- *
145
- * @param input The string that the prefix will be checked against.
146
- *
147
- * @param prefix The prefix that will be tested against the string.
148
- *
149
- * @returns True if the string starts with the prefix, false if it does not.
150
- *
151
- * @langversion ActionScript 3.0
152
- * @playerversion Flash 9.0
153
- * @tiptext
154
- */
155
- public static function beginsWith(input:String, prefix:String):Boolean
156
- {
157
- return (prefix == input.substring(0, prefix.length));
158
- }
159
-
160
- /**
161
- * Determines whether the specified string ends with the spcified suffix.
162
- *
163
- * @param input The string that the suffic will be checked against.
164
- *
165
- * @param prefix The suffic that will be tested against the string.
166
- *
167
- * @returns True if the string ends with the suffix, false if it does not.
168
- *
169
- * @langversion ActionScript 3.0
170
- * @playerversion Flash 9.0
171
- * @tiptext
172
- */
173
- public static function endsWith(input:String, suffix:String):Boolean
174
- {
175
- return (suffix == input.substring(input.length - suffix.length));
176
- }
177
-
178
- /**
179
- * Removes all instances of the remove string in the input string.
180
- *
181
- * @param input The string that will be checked for instances of remove
182
- * string
183
- *
184
- * @param remove The string that will be removed from the input string.
185
- *
186
- * @returns A String with the remove string removed.
187
- *
188
- * @langversion ActionScript 3.0
189
- * @playerversion Flash 9.0
190
- * @tiptext
191
- */
192
- public static function remove(input:String, remove:String):String
193
- {
194
- return StringUtil.replace(input, remove, "");
195
- }
196
-
197
- /**
198
- * Replaces all instances of the replace string in the input string
199
- * with the replaceWith string.
200
- *
201
- * @param input The string that instances of replace string will be
202
- * replaces with removeWith string.
203
- *
204
- * @param replace The string that will be replaced by instances of
205
- * the replaceWith string.
206
- *
207
- * @param replaceWith The string that will replace instances of replace
208
- * string.
209
- *
210
- * @returns A new String with the replace string replaced with the
211
- * replaceWith string.
212
- *
213
- * @langversion ActionScript 3.0
214
- * @playerversion Flash 9.0
215
- * @tiptext
216
- */
217
- public static function replace(input:String, replace:String, replaceWith:String):String
218
- {
219
- return input.split(replace).join(replaceWith);
220
- }
221
-
222
-
223
- /**
224
- * Specifies whether the specified string is either non-null, or contains
225
- * characters (i.e. length is greater that 0)
226
- *
227
- * @param s The string which is being checked for a value
228
- *
229
- * @langversion ActionScript 3.0
230
- * @playerversion Flash 9.0
231
- * @tiptext
232
- */
233
- public static function stringHasValue(s:String):Boolean
234
- {
235
- //todo: this needs a unit test
236
- return (s != null && s.length > 0);
237
- }
238
- }
239
- }