Selector | S8 | VSE | comment |
= | Yes | No | VSE primitive, pending review |
size | Yes | No | equivalent; pending review |
at:ifAbsent: | Yes | No | |
argumentCount | Yes | No | |
isLiteral | Yes | No | |
asLiteral | Yes | No | |
escaped | Yes | No | |
unescaped | Yes | No | |
escapedCode | Yes | No | |
asEncodedURI | Yes | No | |
asDecodedURI | Yes | No | |
add: | Yes | No | S8's implementation of String is read only, this method returns an error, pending review to generate a solution in regards to this method |
--> | Yes | No | |
indexOf:startingAt: | Yes | No | pending review ( VSE's String#indexOfString:startingAt: could be a equivalent) |
lastIndexOf: | Yes | No | pending review ( VSE's String#indexOfLastString: could be a equivalent) |
lastIndexOf: | Yes | No | pending review ( VSE's String#indexOfLastString: could be a equivalent) |
lastIndexOf:ifAbsent: | Yes | No | pending review |
lastIndexOf:startingAt: | Yes | No | pending review |
upTo:startingAt: | Yes | No | pending review (See VSE's ReadStream possible implementation) |
upToLast: | Yes | No | |
fromLast: | Yes | No | |
reservedWords | Yes | No | |
asJavascriptName | Yes | No | |
asSelector | Yes | No | |
asJavascript | Yes | No | |
replaceRegexp:with: | Yes | No | uses ECMAScript's primitive |
tokenize: | Yes | No | uses ECMAScript's primitive |
match: | Yes | No | pending review. (has wrong documentation?) |
between:and: | Yes | No | pending review. |
isLetter | Yes | No | pending review. |
isDigit | Yes | No | pending review. |
isAlphaNumeric | Yes | No | pending review. |
isUpperCase | Yes | No | pending review. |
isLowerCase | Yes | No | pending review. |
isUppercase | Yes | No | pending review. |
isLowercase | Yes | No | pending review. |
isBackSlash | Yes | No | pending review |
asSmalltalkName: | Yes | No | pending review |
asGlobalName | Yes | No | pending review |
asLocalName | Yes | No | pending review |
digitValue | Yes | No | pending review |
errorReadOnly | Yes | No | pending review |
printString | Yes | No | pending review |
asJSONObject | Yes | No | |
isCharacter | Yes | No | |
asciiValue | Yes | No | |
isSeparator | Yes | No | |
asAsciiZ | Yes | No | |
trimFirst:last: | Yes | No | |
trim: | Yes | No | |
trimFirst: | Yes | No | |
trimLast: | Yes | No | |
= | No | Yes | pending review (See Compiler optimization dictionary) |
= | No | Yes | pending review (See Compiler optimization dictionary) |
matchesHead: | No | Yes | pending review. |
matchesHeadIgnoreCase: | No | Yes | pending review. |
matchesTail: | No | Yes | pending review. |
matchesTailIgnoreCase: | No | Yes | pending review. |
remove:ifAbsent: | No | Yes | pending review (See Compiler optimization dictionary) |
at: | Yes | Yes | VSE's implementation includes primitive |
at:put: | Yes | Yes | S8's implementation of String is read only, this method returns an error, pending review to generate a solution in regards to this method |
do: | Yes | Yes | pending review (Check if it is a correct implementation) |
detect:ifNone: | Yes | Yes | pending review (Check if it is a correct implementation) |
includes: | Yes | Yes | pending review (Check if it is a correct implementation) |
withIndexDo: | Yes | Yes | pending review (Check if it is a correct implementation) |
copyWithout: | Yes | Yes | pending review (Check if it is a correct implementation) |
asSymbol | Yes | Yes | equivalent |
occurrencesOf: | Yes | Yes | pending review of VSE's of Collections |
, | Yes | Yes | pending review (Has diferences regarding the handling in VSE's of DoubleByteString ver cual es la necesidad) |
copyWith: | Yes | Yes | pending review (uses self species in VSE's implementation, while in S8's uses a native ) |
copyFrom:to: | Yes | Yes | pending review |
shallowCopy | Yes | Yes | pending review |
deepCopy | Yes | Yes | pending review |
reversed | Yes | Yes | pending review |
indexOf: | Yes | Yes | pending review ( S8 uses ECMAScript primitive) |
indexOf:ifAbsent: | Yes | Yes | pending review ( S8 uses ECMAScript primitive) |
upTo: | Yes | Yes | pending review |
replace:with: | Yes | Yes | pendig review. The semantics seems to differ specially around the fact that S8's implementation uses RegularExpression to perform this replacement. See also #replaceAll:with: (used in hReader sample application. Specific reference CScanner>>unStupidize:) |
asArrayOfSubstrings | Yes | Yes | pending review |
asArrayOfSubstringsSeparatedBy: | Yes | Yes | pending review |
asUppercase | Yes | Yes | pending review. uses ECMAScript's primitive |
asUpperCase | Yes | Yes | pending review. uses ECMAScript's primitive |
asLowercase | Yes | Yes | pending review. uses ECMAScript's primitive |
asLowerCase | Yes | Yes | pending review. uses ECMAScript's primitive |
asNumber | Yes | Yes | pending review. S8 uses primitive |
isString | Yes | Yes | equivalent |
> | Yes | Yes | pending review (See Compiler optimization dictionary) |
| Yes | Yes | pending review (See Compiler optimization dictionary) |
>= | Yes | Yes | pending review (See Compiler optimization dictionary) |
= | Yes | Yes | pending review (See Compiler optimization dictionary) |
trimBlanks | Yes | Yes | Pending review. S8's isSeparator semantics is different with VSE's |