# kjs Library API Documentation

Overview | Class Hierarchy | Classes | Classes (annotated) | Members | Namespaces | Source Files

# KJS::List Class Reference

Native list type. More...

`#include <list.h>`

List of all members.

## Public Member Functions

| List (bool needsMarking)
| List (const List &b)
List & | operator= (const List &)
void | append (const Value &val)
void | append (ValueImp *val)
void | clear ()
List | copy () const
List | copyTail () const
bool | isEmpty () const
int | size () const
ListIterator | begin () const
ListIterator | end () const
Value | at (int i) const
Value | operator[] (int i) const
ValueImp * | impAt (int i) const
void | mark ()

## Static Public Member Functions

static const List & | empty ()

## Detailed Description

Native list type.

List is a native ECMAScript type. List values are only used for intermediate results of expression evaluation and cannot be stored as properties of objects.

The list is explicitly shared. Note that while copyTail() returns a copy of the list the referenced objects are still shared.

Definition at line 48 of file list.h.

## Member Function Documentation

void KJS::List::append | ( | const Value & | val | ) | `[inline]`

Append an object to the end of the list.

Parameters:

  | val | Pointer to object.

Definition at line 66 of file list.h.

Referenced by KJS::Error::create().

void KJS::List::clear | ( |  | ) |

| Remove all elements from the list. Definition at line 238 of file list.cpp.

List KJS::List::copy | ( |  | ) | const

| Make a copy of the list. Definition at line 281 of file list.cpp. References KShortcut::append(). Referenced by copyTail().

List KJS::List::copyTail | ( |  | ) | const

| Make a copy of the list, omitting the first element. Definition at line 302 of file list.cpp. References KShortcut::append(), and copy().

bool KJS::List::isEmpty | ( |  | ) | const`[inline]`

Returns:
  true if the list is empty. false otherwise.

Definition at line 86 of file list.h.

int KJS::List::size | ( |  | ) | const`[inline]`

Returns:
  the current size of the list.

Definition at line 90 of file list.h.

Referenced by end().

ListIterator KJS::List::begin | ( |  | ) | const`[inline]`

Returns:
  A KJS::ListIterator pointing to the first element.

Definition at line 186 of file list.h.

ListIterator KJS::List::end | ( |  | ) | const`[inline]`

Returns:
  A KJS::ListIterator pointing to the last element.

Definition at line 187 of file list.h.

References size().

Value KJS::List::at | ( | int | i | ) | const`[inline]`

Retrieve an element at an indexed position.

If you want to iterate trough the whole list using KJS::ListIterator will be faster.

Parameters:

  | i | List index.

Returns:
  Return the element at position i. KJS::Undefined if the index is out of range.

Definition at line 108 of file list.h.

Value KJS::List::operator[] | ( | int | i | ) | const`[inline]`

| Equivalent to at. Definition at line 112 of file list.h.

const List & KJS::List::empty | ( |  | ) | `[static]`

| Returns a pointer to a static instance of an empty list. Useful if a function has a KJS::List parameter. Definition at line 322 of file list.cpp.

The documentation for this class was generated from the following files:

- list.h
- list.cpp

This file is part of the documentation for kjs Library Version 3.4.1.
Documentation copyright © 1996-2004 the KDE developers.
Generated on Sat Jun 11 20:23:14 2005 by doxygen 1.4.1 written by Dimitri van Heesch, © 1997-2003