Arcane  4.1.12.0
Developer documentation
Loading...
Searching...
No Matches
GenericUri< ValueType, Allocator > Class Template Reference
Collaboration diagram for GenericUri< ValueType, Allocator >:

Public Types

typedef ValueType::Ch Ch

Public Member Functions

 GenericUri (Allocator *allocator=0)
 Constructors.
 GenericUri (const Ch *uri, SizeType len, Allocator *allocator=0)
 GenericUri (const Ch *uri, Allocator *allocator=0)
template<typename T>
 GenericUri (const T &uri, Allocator *allocator=0)
 GenericUri (const GenericUri &rhs)
 Copy constructor.
 GenericUri (const GenericUri &rhs, Allocator *allocator)
 Copy constructor.
 ~GenericUri ()
 Destructor.
GenericUrioperator= (const GenericUri &rhs)
 Assignment operator.
template<typename T>
void Get (T &uri, Allocator &allocator)
 Getters.
const Ch * GetString () const
SizeType GetStringLength () const
const Ch * GetBaseString () const
SizeType GetBaseStringLength () const
const Ch * GetSchemeString () const
SizeType GetSchemeStringLength () const
const Ch * GetAuthString () const
SizeType GetAuthStringLength () const
const Ch * GetPathString () const
SizeType GetPathStringLength () const
const Ch * GetQueryString () const
SizeType GetQueryStringLength () const
const Ch * GetFragString () const
SizeType GetFragStringLength () const
bool operator== (const GenericUri &rhs) const
 Equality operators.
bool operator!= (const GenericUri &rhs) const
bool Match (const GenericUri &uri, bool full=true) const
GenericUri Resolve (const GenericUri &baseuri, Allocator *allocator=0)
 Resolve this URI against another (base) URI in accordance with URI resolution rules.
AllocatorGetAllocator ()
 Get the allocator of this GenericUri.

Private Member Functions

std::size_t Allocate (std::size_t len)
void Free ()
void Parse (const Ch *uri, std::size_t len)
void SetBase ()
void SetUri ()
Ch * CopyPart (Ch *to, Ch *from, std::size_t len)
void RemoveDotSegments ()

Private Attributes

Ch * uri_
Ch * base_
Ch * scheme_
Ch * auth_
Ch * path_
Ch * query_
Ch * frag_
Allocatorallocator_
 The current allocator. It is either user-supplied or equal to ownAllocator_.
AllocatorownAllocator_
 Allocator owned by this Uri.

Detailed Description

template<typename ValueType, typename Allocator = CrtAllocator>
class GenericUri< ValueType, Allocator >

Definition at line 34 of file uri.h.

Member Typedef Documentation

◆ Ch

template<typename ValueType, typename Allocator = CrtAllocator>
typedef ValueType::Ch GenericUri< ValueType, Allocator >::Ch

Definition at line 36 of file uri.h.

Constructor & Destructor Documentation

◆ GenericUri() [1/6]

template<typename ValueType, typename Allocator = CrtAllocator>
GenericUri< ValueType, Allocator >::GenericUri ( Allocator * allocator = 0)
inline

Constructors.

Definition at line 42 of file uri.h.

◆ GenericUri() [2/6]

template<typename ValueType, typename Allocator = CrtAllocator>
GenericUri< ValueType, Allocator >::GenericUri ( const Ch * uri,
SizeType len,
Allocator * allocator = 0 )
inline

Definition at line 45 of file uri.h.

◆ GenericUri() [3/6]

template<typename ValueType, typename Allocator = CrtAllocator>
GenericUri< ValueType, Allocator >::GenericUri ( const Ch * uri,
Allocator * allocator = 0 )
inline

Definition at line 49 of file uri.h.

◆ GenericUri() [4/6]

template<typename ValueType, typename Allocator = CrtAllocator>
template<typename T>
GenericUri< ValueType, Allocator >::GenericUri ( const T & uri,
Allocator * allocator = 0 )
inline

Definition at line 54 of file uri.h.

◆ GenericUri() [5/6]

template<typename ValueType, typename Allocator = CrtAllocator>
GenericUri< ValueType, Allocator >::GenericUri ( const GenericUri< ValueType, Allocator > & rhs)
inline

Copy constructor.

Definition at line 66 of file uri.h.

◆ GenericUri() [6/6]

template<typename ValueType, typename Allocator = CrtAllocator>
GenericUri< ValueType, Allocator >::GenericUri ( const GenericUri< ValueType, Allocator > & rhs,
Allocator * allocator )
inline

Copy constructor.

Definition at line 71 of file uri.h.

◆ ~GenericUri()

template<typename ValueType, typename Allocator = CrtAllocator>
GenericUri< ValueType, Allocator >::~GenericUri ( )
inline

Destructor.

Definition at line 76 of file uri.h.

Member Function Documentation

◆ Allocate()

template<typename ValueType, typename Allocator = CrtAllocator>
std::size_t GenericUri< ValueType, Allocator >::Allocate ( std::size_t len)
inlineprivate

Definition at line 235 of file uri.h.

◆ CopyPart()

template<typename ValueType, typename Allocator = CrtAllocator>
Ch * GenericUri< ValueType, Allocator >::CopyPart ( Ch * to,
Ch * from,
std::size_t len )
inlineprivate

Definition at line 400 of file uri.h.

◆ Free()

template<typename ValueType, typename Allocator = CrtAllocator>
void GenericUri< ValueType, Allocator >::Free ( )
inlineprivate

Definition at line 268 of file uri.h.

◆ Get()

template<typename ValueType, typename Allocator = CrtAllocator>
template<typename T>
void GenericUri< ValueType, Allocator >::Get ( T & uri,
Allocator & allocator )
inline

Getters.

Definition at line 100 of file uri.h.

◆ GetAllocator()

template<typename ValueType, typename Allocator = CrtAllocator>
Allocator & GenericUri< ValueType, Allocator >::GetAllocator ( )
inline

Get the allocator of this GenericUri.

Definition at line 230 of file uri.h.

◆ GetAuthString()

template<typename ValueType, typename Allocator = CrtAllocator>
const Ch * GenericUri< ValueType, Allocator >::GetAuthString ( ) const
inline

Definition at line 110 of file uri.h.

◆ GetAuthStringLength()

template<typename ValueType, typename Allocator = CrtAllocator>
SizeType GenericUri< ValueType, Allocator >::GetAuthStringLength ( ) const
inline

Definition at line 111 of file uri.h.

◆ GetBaseString()

template<typename ValueType, typename Allocator = CrtAllocator>
const Ch * GenericUri< ValueType, Allocator >::GetBaseString ( ) const
inline

Definition at line 106 of file uri.h.

◆ GetBaseStringLength()

template<typename ValueType, typename Allocator = CrtAllocator>
SizeType GenericUri< ValueType, Allocator >::GetBaseStringLength ( ) const
inline

Definition at line 107 of file uri.h.

◆ GetFragString()

template<typename ValueType, typename Allocator = CrtAllocator>
const Ch * GenericUri< ValueType, Allocator >::GetFragString ( ) const
inline

Definition at line 116 of file uri.h.

◆ GetFragStringLength()

template<typename ValueType, typename Allocator = CrtAllocator>
SizeType GenericUri< ValueType, Allocator >::GetFragStringLength ( ) const
inline

Definition at line 117 of file uri.h.

◆ GetPathString()

template<typename ValueType, typename Allocator = CrtAllocator>
const Ch * GenericUri< ValueType, Allocator >::GetPathString ( ) const
inline

Definition at line 112 of file uri.h.

◆ GetPathStringLength()

template<typename ValueType, typename Allocator = CrtAllocator>
SizeType GenericUri< ValueType, Allocator >::GetPathStringLength ( ) const
inline

Definition at line 113 of file uri.h.

◆ GetQueryString()

template<typename ValueType, typename Allocator = CrtAllocator>
const Ch * GenericUri< ValueType, Allocator >::GetQueryString ( ) const
inline

Definition at line 114 of file uri.h.

◆ GetQueryStringLength()

template<typename ValueType, typename Allocator = CrtAllocator>
SizeType GenericUri< ValueType, Allocator >::GetQueryStringLength ( ) const
inline

Definition at line 115 of file uri.h.

◆ GetSchemeString()

template<typename ValueType, typename Allocator = CrtAllocator>
const Ch * GenericUri< ValueType, Allocator >::GetSchemeString ( ) const
inline

Definition at line 108 of file uri.h.

◆ GetSchemeStringLength()

template<typename ValueType, typename Allocator = CrtAllocator>
SizeType GenericUri< ValueType, Allocator >::GetSchemeStringLength ( ) const
inline

Definition at line 109 of file uri.h.

◆ GetString()

template<typename ValueType, typename Allocator = CrtAllocator>
const Ch * GenericUri< ValueType, Allocator >::GetString ( ) const
inline

Definition at line 104 of file uri.h.

◆ GetStringLength()

template<typename ValueType, typename Allocator = CrtAllocator>
SizeType GenericUri< ValueType, Allocator >::GetStringLength ( ) const
inline

Definition at line 105 of file uri.h.

◆ Match()

template<typename ValueType, typename Allocator = CrtAllocator>
bool GenericUri< ValueType, Allocator >::Match ( const GenericUri< ValueType, Allocator > & uri,
bool full = true ) const
inline

Definition at line 138 of file uri.h.

◆ operator!=()

template<typename ValueType, typename Allocator = CrtAllocator>
bool GenericUri< ValueType, Allocator >::operator!= ( const GenericUri< ValueType, Allocator > & rhs) const
inline

Definition at line 134 of file uri.h.

◆ operator=()

template<typename ValueType, typename Allocator = CrtAllocator>
GenericUri & GenericUri< ValueType, Allocator >::operator= ( const GenericUri< ValueType, Allocator > & rhs)
inline

Assignment operator.

Definition at line 82 of file uri.h.

◆ operator==()

template<typename ValueType, typename Allocator = CrtAllocator>
bool GenericUri< ValueType, Allocator >::operator== ( const GenericUri< ValueType, Allocator > & rhs) const
inline

Equality operators.

Definition at line 130 of file uri.h.

◆ Parse()

template<typename ValueType, typename Allocator = CrtAllocator>
void GenericUri< ValueType, Allocator >::Parse ( const Ch * uri,
std::size_t len )
inlineprivate

Definition at line 278 of file uri.h.

◆ RemoveDotSegments()

template<typename ValueType, typename Allocator = CrtAllocator>
void GenericUri< ValueType, Allocator >::RemoveDotSegments ( )
inlineprivate

Definition at line 412 of file uri.h.

◆ Resolve()

template<typename ValueType, typename Allocator = CrtAllocator>
GenericUri GenericUri< ValueType, Allocator >::Resolve ( const GenericUri< ValueType, Allocator > & baseuri,
Allocator * allocator = 0 )
inline

Resolve this URI against another (base) URI in accordance with URI resolution rules.

Definition at line 157 of file uri.h.

Referenced by GenericSchemaDocument< Value, CrtAllocator >::FindId().

Here is the caller graph for this function:

◆ SetBase()

template<typename ValueType, typename Allocator = CrtAllocator>
void GenericUri< ValueType, Allocator >::SetBase ( )
inlineprivate

Definition at line 375 of file uri.h.

◆ SetUri()

template<typename ValueType, typename Allocator = CrtAllocator>
void GenericUri< ValueType, Allocator >::SetUri ( )
inlineprivate

Definition at line 389 of file uri.h.

Member Data Documentation

◆ allocator_

template<typename ValueType, typename Allocator = CrtAllocator>
Allocator* GenericUri< ValueType, Allocator >::allocator_
private

The current allocator. It is either user-supplied or equal to ownAllocator_.

Definition at line 469 of file uri.h.

Referenced by Resolve().

◆ auth_

template<typename ValueType, typename Allocator = CrtAllocator>
Ch* GenericUri< ValueType, Allocator >::auth_
private

Definition at line 464 of file uri.h.

◆ base_

template<typename ValueType, typename Allocator = CrtAllocator>
Ch* GenericUri< ValueType, Allocator >::base_
private

Definition at line 462 of file uri.h.

◆ frag_

template<typename ValueType, typename Allocator = CrtAllocator>
Ch* GenericUri< ValueType, Allocator >::frag_
private

Definition at line 467 of file uri.h.

◆ ownAllocator_

template<typename ValueType, typename Allocator = CrtAllocator>
Allocator* GenericUri< ValueType, Allocator >::ownAllocator_
private

Allocator owned by this Uri.

Definition at line 470 of file uri.h.

◆ path_

template<typename ValueType, typename Allocator = CrtAllocator>
Ch* GenericUri< ValueType, Allocator >::path_
private

Definition at line 465 of file uri.h.

◆ query_

template<typename ValueType, typename Allocator = CrtAllocator>
Ch* GenericUri< ValueType, Allocator >::query_
private

Definition at line 466 of file uri.h.

◆ scheme_

template<typename ValueType, typename Allocator = CrtAllocator>
Ch* GenericUri< ValueType, Allocator >::scheme_
private

Definition at line 463 of file uri.h.

◆ uri_

template<typename ValueType, typename Allocator = CrtAllocator>
Ch* GenericUri< ValueType, Allocator >::uri_
private

Definition at line 461 of file uri.h.


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