dillo  3.0.5
About: dillo is a small, fast, extensible Web browser particularly suitable for older or smaller computers and embedded systems (but only limited or no support for frames, CSS, JavaScript, Java).
  Fossies Dox: dillo-3.0.5.tar.gz  ("inofficial" and yet experimental doxygen-generated source code documentation)  

lout::object::ConstString Class Reference

An object::Object wrapper for constant strings (char*). More...

#include <object.hh>

Inheritance diagram for lout::object::ConstString:
[legend]
Collaboration diagram for lout::object::ConstString:
[legend]

Public Member Functions

 ConstString (const char *str)
 
bool equals (Object *other)
 Returns, whether two objects are equal. More...
 
int hashValue ()
 Return a hash value for the object. More...
 
int compareTo (Comparable *other)
 Compare two objects c1 and c2. More...
 
void intoStringBuffer (misc::StringBuffer *sb)
 Store a textual representation of the object in a misc::StringBuffer. More...
 
const char * chars ()
 
- Public Member Functions inherited from lout::object::Object
virtual ~Object ()
 The destructor is defined as virtual (but not abstract), so that destruction of Object's works properly. More...
 
virtual Objectclone ()
 Return an exact copy of the object. More...
 
const char * toString ()
 Use object::Object::intoStringBuffer to return a textual representation of the object. More...
 
virtual size_t sizeOf ()
 Return the number of bytes, this object totally uses. More...
 

Static Public Member Functions

static int hashValue (const char *str)
 
- Static Public Member Functions inherited from lout::object::Comparable
static int compareFun (const void *p1, const void *p2)
 This static method may be used as compare function for qsort(3) and bsearch(3), for an array of Object* (Object*[] or Object**). More...
 

Protected Attributes

const char * str
 

Detailed Description

An object::Object wrapper for constant strings (char*).

As opposed to object::String, the char array is not copied.

Definition at line 111 of file object.hh.

Constructor & Destructor Documentation

◆ ConstString()

lout::object::ConstString::ConstString ( const char *  str)
inline

Definition at line 117 of file object.hh.

References str.

Member Function Documentation

◆ chars()

const char* lout::object::ConstString::chars ( )
inline

Definition at line 123 of file object.hh.

References str.

◆ compareTo()

int lout::object::ConstString::compareTo ( Comparable other)
virtual

Compare two objects c1 and c2.

Return a value < 0, when c1 is less than c2, a value > 0, when c1 is greater than c2, or 0, when c1 and c2 are equal.

If c1.equals(c2) (as defined in Object), c1.compareTo(c2) must be 0, but, unlike you may expect, the reversed is not necessarily true. This method returns 0, if, according to the rules for sorting, there is no difference, but there may still be differences (not relevant for sorting), which "equals" will care about.

Implements lout::object::Comparable.

Definition at line 217 of file object.cc.

References str.

◆ equals()

bool lout::object::ConstString::equals ( Object other)
virtual

Returns, whether two objects are equal.

The caller should ensure, that this and the object have the same class; this makes casting of "other" safe. Typically, an implementation should check this == other first, the caller can assume a fast implementation.

Reimplemented from lout::object::Object.

Definition at line 201 of file object.cc.

References str.

◆ hashValue() [1/2]

int lout::object::ConstString::hashValue ( )
virtual

Return a hash value for the object.

Reimplemented from lout::object::Object.

Definition at line 211 of file object.cc.

References str.

Referenced by dw::core::style::FontAttrs::hashValue().

◆ hashValue() [2/2]

int lout::object::ConstString::hashValue ( const char *  str)
static

Definition at line 231 of file object.cc.

References str.

◆ intoStringBuffer()

void lout::object::ConstString::intoStringBuffer ( misc::StringBuffer sb)
virtual

Store a textual representation of the object in a misc::StringBuffer.

This is used by object::Object::toString.

Reimplemented from lout::object::Object.

Definition at line 242 of file object.cc.

References lout::misc::StringBuffer::append(), and str.

Member Data Documentation

◆ str

const char* lout::object::ConstString::str
protected

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