#include <svector.hpp>
Inheritance diagram for SVectorRef:


This class allows to easily handle S-expressions of the Vector type. What it really does is making sure it always points to an SExpressionVector object and providing some vector-specific operations.
Definition at line 108 of file svector.hpp.
Public Member Functions | |
| SVectorRef () | |
| Default constructor. | |
| SVectorRef (int n) | |
| Raw vector creation constructor. | |
| SVectorRef (SExpressionVector *ts) | |
| 'Take care' constructor | |
| SVectorRef (const SVectorRef &other) | |
| Copy constructor. | |
| SVectorRef (const SReference &other) | |
| Cast from SReference. | |
| SVectorRef (SReference &ref, int fake) | |
| Strange constructor. | |
| ~SVectorRef () | |
| The destructor. | |
| const SReference & | operator[] (int index) const |
| The index operator. | |
| SReference & | operator[] (int index) |
| The index operator. | |
| 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 |
|
|
Default constructor. Makes an unbound reference (surprize!) Definition at line 112 of file svector.hpp. Referenced by SMatrixRef< 2 >::operator[](), and SMatrixRef< dim >::operator[](). |
|
|
Raw vector creation constructor. New vector is created.
Definition at line 122 of file svector.hpp. |
|
|
'Take care' constructor
Definition at line 125 of file svector.hpp. |
|
|
Copy constructor.
Definition at line 129 of file svector.hpp. |
|
|
Cast from SReference. If the argument doesn't reference to an SExpressionVector object, exception is thrown. Be careful! Definition at line 135 of file svector.hpp. |
|
||||||||||||
|
Strange constructor. This form is used by SMatrix to allocate vectors as needed into empty slots.
Definition at line 146 of file svector.cpp. References GenericSReference< Tp, X_wrongtype >::GetPtr(). |
|
|
The destructor.
Definition at line 150 of file svector.hpp. |
|
|
The index operator.
Definition at line 153 of file svector.hpp. References GenericSReference< Tp, X_wrongtype >::GetPtr(). |
|
|
The index operator.
Reimplemented in SMatrixRef< dim >, and SMatrixRef< 2 >. Definition at line 157 of file svector.hpp. References GenericSReference< Tp, X_wrongtype >::GetPtr(). |
|
|||||||||
|
Get the appropriately typed pointer to the referenced object.
Reimplemented from SReference. Definition at line 65 of file gensref.hpp. Referenced by SString::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->(), operator[](), 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(). |
|
|
|
|
|
|
|
1.4.1