#include <sstring.hpp>
Inheritance diagram for SString:
SString class implements a string as an SReference to an SExpressionString object. Some useful operations are defined so that one can use the class instead of the standard string class.
Definition at line 45 of file sstring.hpp.
Public Member Functions | |
SString () | |
Make empty string. | |
SString (const char *s) | |
Make a string from a string literal. | |
SString (SExpressionString *ts) | |
Hold the given object. | |
SString (const SString &other) | |
The copy constructor. | |
SString (const SReference &other) | |
Type-checking construction from a reference. | |
~SString () | |
The destructor. | |
SString & | operator= (const char *s) |
Assign. | |
SString | operator+ (const SString &other) const |
Concatenation. | |
void | operator+= (const SString &other) |
Append another string. | |
SString | operator+ (const char *s) const |
Concatenation. | |
void | operator+= (const char *s) |
Append another string. | |
void | operator+= (char c) |
Append a character. | |
const char * | c_str () const |
Get a plain pointer to the string. | |
char | operator[] (int index) const |
Get the element (char) by index. | |
unsigned int | length () const |
Get the length of the string. | |
unsigned int | Length () const |
Get the length of the string. | |
bool | operator== (const SString &other) const |
String comparision. | |
bool | operator!= (const SString &other) const |
String comparision. | |
Tp * | GetPtr () const |
Get the appropriately typed pointer to the referenced object. | |
Tp & | operator * () const |
Dereference (returns a reference to the pointe object). | |
Tp * | operator-> () const |
Select a field/method of the referenced object. | |
SReference & | AddAnotherItemToList (const SReference &right) |
Add item to list. | |
SReference & | ChangeListEnd (const SReference &new_last) |
Make/change dotted list. | |
SReference | MakeCons (const SReference &right) const |
Make a cons. | |
SReference & | operator, (const SReference &r) |
List composing operation. | |
SReference & | operator|| (const SReference &t) |
dotted list composing operation | |
SReference | operator^ (const SReference &t) const |
CONS operation. | |
bool | operator== (const SReference &other) const |
Equality is just pointer comparision. | |
bool | operator== (const SExpression *other) const |
Equality is just pointer comparision. | |
bool | operator!= (const SReference &other) const |
Non-equality is just pointer comparision. | |
bool | operator!= (const SExpression *other) const |
Non-equality is just pointer comparision. | |
bool | IsEql (const SReference &other) const |
bool | IsEqual (const SReference &other) const |
SReference & | Car () const |
SReference & | Cdr () const |
SReference & | CCar () const |
SReference & | CCdr () const |
intelib_float_t | GetFloat () const |
intelib_integer_t | GetInt () const |
const char * | GetString () const |
char | GetSingleChar () const |
template<class Tp> | |
Tp * | DynamicCastGetPtr () const |
template<class Tp> | |
Tp * | SimpleCastGetPtr () const |
SReference | Clone () const |
SReference | CopyList () const |
SReference | CopyTree () const |
bool | IsEmptyList () const |
|
Make empty string.
Definition at line 48 of file sstring.hpp. Referenced by IntelibGenericReader::FeedChar(), and operator+(). |
|
Make a string from a string literal.
Definition at line 50 of file sstring.hpp. |
|
Hold the given object.
Definition at line 52 of file sstring.hpp. |
|
The copy constructor.
Definition at line 54 of file sstring.hpp. |
|
Type-checking construction from a reference.
Definition at line 56 of file sstring.hpp. |
|
The destructor.
Definition at line 58 of file sstring.hpp. |
|
Assign.
Definition at line 40 of file sstring.cpp. References SReference::operator=(), and SReference::SReference(). Referenced by operator+=(). |
|
Concatenation.
Definition at line 47 of file sstring.cpp. |
|
Append another string.
Definition at line 52 of file sstring.cpp. References c_str(), and operator=(). |
|
Concatenation.
Definition at line 57 of file sstring.cpp. |
|
Append another string.
Definition at line 62 of file sstring.cpp. References c_str(), and operator=(). |
|
Append a character.
Definition at line 67 of file sstring.cpp. References c_str(), and operator=(). |
|
Get a plain pointer to the string.
Definition at line 74 of file sstring.cpp. References GenericSReference< Tp, X_wrongtype >::GetPtr(). Referenced by SExpressionStreamCharbuf::Cleanup(), length(), operator+(), operator+=(), operator==(), operator[](), pretty_print(), and SExpressionStreamCharbuf::Ungetc(). |
|
Get the element (char) by index.
Definition at line 77 of file sstring.hpp. References c_str(). |
|
Get the length of the string.
Definition at line 89 of file sstring.cpp. References c_str(). Referenced by SExpressionStreamCharbuf::Getc(), SExpressionStreamCharbuf::Gets(), Length(), pretty_print(), and SExpressionStreamCharbuf::Seek(). |
|
Get the length of the string.
Definition at line 81 of file sstring.hpp. References length(). |
|
String comparision.
Definition at line 79 of file sstring.cpp. References c_str(). |
|
String comparision.
Definition at line 84 of file sstring.cpp. |
|
Get the appropriately typed pointer to the referenced object.
Reimplemented from SReference. Definition at line 65 of file gensref.hpp. Referenced by c_str(), SExpressionHashPackage::FindSymbol(), SchExpressionContext::GetAllSymbols(), LExpressionContext::GetAllSymbols(), SchExpressionContext::GetBinding(), LExpressionContext::GetBinding(), LExpressionContext::GetFunBinding(), GenericSReference< LExpressionContext, IntelibX_lisp_not_a_context >::operator *(), SStreamTextInput::operator->(), GenericSReference< LExpressionContext, IntelibX_lisp_not_a_context >::operator->(), SVectorRef::operator[](), SVectorRef::SVectorRef(), and SExpressionVector::TextRepresentation(). |
|
Dereference (returns a reference to the pointe object).
Reimplemented from GenericReference< SExpression >. Definition at line 69 of file gensref.hpp. |
|
Select a field/method of the referenced object.
Reimplemented from GenericReference< SExpression >. Definition at line 71 of file gensref.hpp. |
|
Add item to list. For a list, adds another dotted pair to its end. For non-lists, the result is undefined. Referenced by SReference::operator,(). |
|
Make/change dotted list.
Referenced by SReference::operator||(). |
|
Make a cons. Produces a cons (dotted pair) using *this as the CAR and the given argument as the CDR Referenced by SReference::operator^(). |
|
List composing operation. Operator "," is used to construct lists naturally, like this: (L| 1, 2, 3)
Reimplemented in SBacklinkRef, SDoubleListRef, LReference, and SchReference. Definition at line 541 of file sexpress.hpp. References SReference::AddAnotherItemToList(). Referenced by SchReference::operator,(), and LReference::operator,(). |
|
dotted list composing operation Operator "||" is used to construct dotted lists, like this: ((L| 1, 2, 3) || 4) // (1 2 3 . 4)
Reimplemented in LReference, and SchReference. Definition at line 548 of file sexpress.hpp. References SReference::ChangeListEnd(). Referenced by SchReference::operator||(), and LReference::operator||(). |
|
CONS operation. Operator "^" is used to produce conses Definition at line 552 of file sexpress.hpp. References SReference::MakeCons(). |
|
Equality is just pointer comparision.
Definition at line 556 of file sexpress.hpp. References SReference::GetPtr(). |
|
Equality is just pointer comparision.
Definition at line 562 of file sexpress.hpp. References SReference::GetPtr(). |
|
Non-equality is just pointer comparision.
Definition at line 559 of file sexpress.hpp. References SReference::GetPtr(). |
|
Non-equality is just pointer comparision.
Definition at line 565 of file sexpress.hpp. References SReference::GetPtr(). |
|
Reimplemented in LReference, and SchReference. Referenced by SExprsAreEql(). |
|
Reimplemented in LReference, and SchReference. Referenced by SExprsAreEqual(). |
|
Referenced by LExpressionMacro::Call(), SDoubleListRange::Copy(), IntelibGenericReader::Get(), RetrieveFunctionObject(), and stack_representation(). |
|
Referenced by LExpressionMacro::Call(), SBacklinkRef::Remove(), SQueue::RemoveFirst(), RetrieveFunctionObject(), and stack_representation(). |
|
|
|
|
|
Referenced by SExpressionIndirectTemplate< Tt >::Setf(). |
|
Referenced by SExpressionIndirectTemplate< Tt >::Setf(). |
|
Referenced by SExpressionIndirectTemplate< Tt >::Setf(). |
|
|
|
|
Definition at line 695 of file sexpress.hpp. References SReference::GetPtr(), and SExpression::TermType(). |
|
Referenced by SExpressionVector::Clone(), and SExpressionHashTable::Clone(). |
|
|
|
|
|