# This file was automatically generated by SWIG (https://www.swig.org).
# Version 4.2.1
#
# Do not make changes to this file unless you know what you are doing - modify
# the SWIG interface file instead.

"""
TCollection module, see official documentation at
https://www.opencascade.com/doc/occt-7.7.0/refman/html/package_tcollection.html
"""

from sys import version_info as _swig_python_version_info
# Import the low-level C/C++ module
if __package__ or "." in __name__:
    from . import _TCollection
else:
    import _TCollection

try:
    import builtins as __builtin__
except ImportError:
    import __builtin__

def _swig_repr(self):
    try:
        strthis = "proxy of " + self.this.__repr__()
    except __builtin__.Exception:
        strthis = ""
    return "<%s.%s; %s >" % (self.__class__.__module__, self.__class__.__name__, strthis,)


def _swig_setattr_nondynamic_instance_variable(set):
    def set_instance_attr(self, name, value):
        if name == "this":
            set(self, name, value)
        elif name == "thisown":
            self.this.own(value)
        elif hasattr(self, name) and isinstance(getattr(type(self), name), property):
            set(self, name, value)
        else:
            raise AttributeError("You cannot add instance attributes to %s" % self)
    return set_instance_attr


def _swig_setattr_nondynamic_class_variable(set):
    def set_class_attr(cls, name, value):
        if hasattr(cls, name) and not isinstance(getattr(cls, name), property):
            set(cls, name, value)
        else:
            raise AttributeError("You cannot add class attributes to %s" % cls)
    return set_class_attr


def _swig_add_metaclass(metaclass):
    """Class decorator for adding a metaclass to a SWIG wrapped class - a slimmed down version of six.add_metaclass"""
    def wrapper(cls):
        return metaclass(cls.__name__, cls.__bases__, cls.__dict__.copy())
    return wrapper


class _SwigNonDynamicMeta(type):
    """Meta class to enforce nondynamic attributes (no new attributes) for a class"""
    __setattr__ = _swig_setattr_nondynamic_class_variable(type.__setattr__)


class SwigPyIterator(object):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")

    def __init__(self, *args, **kwargs):
        raise AttributeError("No constructor defined - class is abstract")
    __repr__ = _swig_repr
    __swig_destroy__ = _TCollection.delete_SwigPyIterator

    def value(self):
        return _TCollection.SwigPyIterator_value(self)

    def incr(self, n=1):
        return _TCollection.SwigPyIterator_incr(self, n)

    def decr(self, n=1):
        return _TCollection.SwigPyIterator_decr(self, n)

    def distance(self, x):
        return _TCollection.SwigPyIterator_distance(self, x)

    def equal(self, x):
        return _TCollection.SwigPyIterator_equal(self, x)

    def copy(self):
        return _TCollection.SwigPyIterator_copy(self)

    def next(self):
        return _TCollection.SwigPyIterator_next(self)

    def __next__(self):
        return _TCollection.SwigPyIterator___next__(self)

    def previous(self):
        return _TCollection.SwigPyIterator_previous(self)

    def advance(self, n):
        return _TCollection.SwigPyIterator_advance(self, n)

    def __eq__(self, x):
        return _TCollection.SwigPyIterator___eq__(self, x)

    def __ne__(self, x):
        return _TCollection.SwigPyIterator___ne__(self, x)

    def __iadd__(self, n):
        return _TCollection.SwigPyIterator___iadd__(self, n)

    def __isub__(self, n):
        return _TCollection.SwigPyIterator___isub__(self, n)

    def __add__(self, n):
        return _TCollection.SwigPyIterator___add__(self, n)

    def __sub__(self, *args):
        return _TCollection.SwigPyIterator___sub__(self, *args)
    def __iter__(self):
        return self

# Register SwigPyIterator in _TCollection:
_TCollection.SwigPyIterator_swigregister(SwigPyIterator)

def _dumps_object(klass):
    """ Overwrite default string output for any wrapped object.
    By default, __repr__ method returns something like:
    <OCC.Core.TopoDS.TopoDS_Shape; proxy of <Swig Object of type 'TopoDS_Shape *' at 0x02BB0758> >
    This is too much verbose.
    We prefer :
    <class 'gp_Pnt'>
    or
    <class 'TopoDS_Shape'>
    """
    klass_name = str(klass.__class__).split(".")[3].split("'")[0]
    repr_string = "<class '" + klass_name + "'"
# for TopoDS_Shape, we also look for the base type
    if klass_name == "TopoDS_Shape":
        if klass.IsNull():
            repr_string += ": Null>"
            return repr_string
        st = klass.ShapeType()
        types = {OCC.Core.TopAbs.TopAbs_VERTEX: "Vertex",
                 OCC.Core.TopAbs.TopAbs_SOLID: "Solid",
                 OCC.Core.TopAbs.TopAbs_EDGE: "Edge",
                 OCC.Core.TopAbs.TopAbs_FACE: "Face",
                 OCC.Core.TopAbs.TopAbs_SHELL: "Shell",
                 OCC.Core.TopAbs.TopAbs_WIRE: "Wire",
                 OCC.Core.TopAbs.TopAbs_COMPOUND: "Compound",
                 OCC.Core.TopAbs.TopAbs_COMPSOLID: "Compsolid"}
        repr_string += "; Type:%s" % types[st]        
    elif hasattr(klass, "IsNull"):
        if klass.IsNull():
            repr_string += "; Null"
    repr_string += ">"
    return repr_string


def process_exception(error, method_name, class_name):
    return _TCollection.process_exception(error, method_name, class_name)

from six import with_metaclass
import warnings
from OCC.Wrapper.wrapper_utils import Proxy, deprecated

import OCC.Core.Standard
import OCC.Core.NCollection

from enum import IntEnum
from OCC.Core.Exception import *




def Handle_TCollection_HAsciiString_Create():
    return _TCollection.Handle_TCollection_HAsciiString_Create()

def Handle_TCollection_HAsciiString_DownCast(t):
    return _TCollection.Handle_TCollection_HAsciiString_DownCast(t)

def Handle_TCollection_HAsciiString_IsNull(t):
    return _TCollection.Handle_TCollection_HAsciiString_IsNull(t)

def Handle_TCollection_HExtendedString_Create():
    return _TCollection.Handle_TCollection_HExtendedString_Create()

def Handle_TCollection_HExtendedString_DownCast(t):
    return _TCollection.Handle_TCollection_HExtendedString_DownCast(t)

def Handle_TCollection_HExtendedString_IsNull(t):
    return _TCollection.Handle_TCollection_HExtendedString_IsNull(t)
class tcollection(object):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr

    @staticmethod
    def NextPrimeForMap(*args):
        r"""

        Parameters
        ----------
        I: int

        Return
        -------
        int

        Description
        -----------
        Returns a prime number greater than <i> suitable to dimension a map. when <i> becomes great there is a limit on the result (today the limit is around 1 000 000). this is not a limit of the number of items but a limit in the number of buckets. i.e. there will be more collisions in the map.

        """
        return _TCollection.tcollection_NextPrimeForMap(*args)

    __repr__ = _dumps_object


    def __init__(self):
        _TCollection.tcollection_swiginit(self, _TCollection.new_tcollection())
    __swig_destroy__ = _TCollection.delete_tcollection

# Register tcollection in _TCollection:
_TCollection.tcollection_swigregister(tcollection)
class TCollection_AsciiString(object):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr

    def __init__(self, *args):
        r"""
        Return
        -------
        None

        Description
        -----------
        Initializes a asciistring to an empty asciistring.

        Parameters
        ----------
        message: str

        Return
        -------
        None

        Description
        -----------
        Initializes a asciistring with a cstring.

        Parameters
        ----------
        message: str
        aLen: int

        Return
        -------
        None

        Description
        -----------
        Initializes a asciistring with a cstring.

        Parameters
        ----------
        aChar: Standard_Character

        Return
        -------
        None

        Description
        -----------
        Initializes a asciistring with a single character.

        Parameters
        ----------
        length: int
        filler: Standard_Character

        Return
        -------
        None

        Description
        -----------
        Initializes an asciistring with <length> space allocated. and filled with <filler>. this is useful for buffers.

        Parameters
        ----------
        value: int

        Return
        -------
        None

        Description
        -----------
        Initializes an asciistring with an integer value.

        Parameters
        ----------
        value: float

        Return
        -------
        None

        Description
        -----------
        Initializes an asciistring with a real value.

        Parameters
        ----------
        astring: str

        Return
        -------
        None

        Description
        -----------
        Initializes a asciistring with another asciistring.

        Parameters
        ----------
        theOther: str

        Return
        -------
        None

        Description
        -----------
        Move constructor.

        Parameters
        ----------
        astring: str
        message: Standard_Character

        Return
        -------
        None

        Description
        -----------
        Initializes a asciistring with copy of another asciistring concatenated with the message character.

        Parameters
        ----------
        astring: str
        message: str

        Return
        -------
        None

        Description
        -----------
        Initializes a asciistring with copy of another asciistring concatenated with the message string.

        Parameters
        ----------
        astring: str
        message: str

        Return
        -------
        None

        Description
        -----------
        Initializes a asciistring with copy of another asciistring concatenated with the message string.

        Parameters
        ----------
        astring: str
        replaceNonAscii: Standard_Character (optional, default to 0)

        Return
        -------
        None

        Description
        -----------
        Creation by converting an extended string to an ascii string. if replacenonascii is non-null character, it will be used in place of any non-ascii character found in the source string. otherwise, creates utf-8 unicode string.

        Parameters
        ----------
        theStringUtf: Standard_WideChar *

        Return
        -------
        None

        Description
        -----------
        Initialize utf-8 unicode string from wide-char string considering it as unicode string (the size of wide char is a platform-dependent - e.g. on windows wchar_t is utf-16). //! this constructor is unavailable if application is built with deprecated msvc option '-zc:wchar_t-', since occt itself is never built with this option.

        """
        _TCollection.TCollection_AsciiString_swiginit(self, _TCollection.new_TCollection_AsciiString(*args))

    def AssignCat(self, *args):
        r"""

        Parameters
        ----------
        other: Standard_Character

        Return
        -------
        None

        Description
        -----------
        Appends <other> to me. this is an unary operator.

        Parameters
        ----------
        other: int

        Return
        -------
        None

        Description
        -----------
        Appends <other> to me. this is an unary operator.

        Parameters
        ----------
        other: float

        Return
        -------
        None

        Description
        -----------
        Appends <other> to me. this is an unary operator.

        Parameters
        ----------
        other: str

        Return
        -------
        None

        Description
        -----------
        Appends <other> to me. this is an unary operator. ex: astring += 'dummy' to catenate more than one cstring, you must put a asciistring before. example: astring += 'hello ' + 'dolly' is not valid ! but astring += anotherstring + 'hello ' + 'dolly' is valid.

        Parameters
        ----------
        other: str

        Return
        -------
        None

        Description
        -----------
        Appends <other> to me. this is an unary operator. example: astring += anotherstring.

        """
        return _TCollection.TCollection_AsciiString_AssignCat(self, *args)

    def Capitalize(self, *args):
        r"""
        Return
        -------
        None

        Description
        -----------
        Converts the first character into its corresponding upper-case character and the other characters into lowercase example: before me = 'hello ' after me = 'hello '.

        """
        return _TCollection.TCollection_AsciiString_Capitalize(self, *args)

    def Cat(self, *args):
        r"""

        Parameters
        ----------
        other: Standard_Character

        Return
        -------
        TCollection_AsciiString

        Description
        -----------
        Appends <other> to me. syntax: astring = astring + 'dummy' example: astring contains 'i say ' astring = astring + 'hello ' + 'dolly' gives 'i say hello dolly' to catenate more than one cstring, you must put a string before. so the following example is wrong ! astring = 'hello ' + 'dolly' this is not allowed this rule is applicable to assigncat (operator +=) too.

        Parameters
        ----------
        other: int

        Return
        -------
        TCollection_AsciiString

        Description
        -----------
        Appends <other> to me. syntax: astring = astring + 15; example: astring contains 'i say ' gives 'i say 15' to catenate more than one cstring, you must put a string before. so the following example is wrong ! astring = 'hello ' + 'dolly' this is not allowed this rule is applicable to assigncat (operator +=) too.

        Parameters
        ----------
        other: float

        Return
        -------
        TCollection_AsciiString

        Description
        -----------
        Appends <other> to me. syntax: astring = astring + 15.15; example: astring contains 'i say ' gives 'i say 15.15' to catenate more than one cstring, you must put a string before. so the following example is wrong ! astring = 'hello ' + 'dolly' this is not allowed this rule is applicable to assigncat (operator +=) too.

        Parameters
        ----------
        other: str

        Return
        -------
        TCollection_AsciiString

        Description
        -----------
        Appends <other> to me. syntax: astring = astring + 'dummy' example: astring contains 'i say ' astring = astring + 'hello ' + 'dolly' gives 'i say hello dolly' to catenate more than one cstring, you must put a string before. so the following example is wrong ! astring = 'hello ' + 'dolly' this is not allowed this rule is applicable to assigncat (operator +=) too.

        Parameters
        ----------
        other: str

        Return
        -------
        TCollection_AsciiString

        Description
        -----------
        Appends <other> to me. example: astring = astring + anotherstring.

        """
        return _TCollection.TCollection_AsciiString_Cat(self, *args)

    def Center(self, *args):
        r"""

        Parameters
        ----------
        Width: int
        Filler: Standard_Character

        Return
        -------
        None

        Description
        -----------
        Modifies this ascii string so that its length becomes equal to width and the new characters are equal to filler. new characters are added both at the beginning and at the end of this string. if width is less than the length of this ascii string, nothing happens. example tcollection_asciistring myalphabet('abcdef'); myalphabet.center(9,' '); assert ( myalphabet == ' abcdef ' );.

        """
        return _TCollection.TCollection_AsciiString_Center(self, *args)

    def ChangeAll(self, *args):
        r"""

        Parameters
        ----------
        aChar: Standard_Character
        NewChar: Standard_Character
        CaseSensitive: bool (optional, default to Standard_True)

        Return
        -------
        None

        Description
        -----------
        Substitutes all the characters equal to achar by newchar in the asciistring <self>. the substitution can be case sensitive. if you don't use default case sensitive, no matter whether achar is uppercase or not. example: me = 'histake' -> changeall('h','m',standard_true) gives me = 'mistake'.

        """
        return _TCollection.TCollection_AsciiString_ChangeAll(self, *args)

    def Clear(self, *args):
        r"""
        Return
        -------
        None

        Description
        -----------
        Removes all characters contained in <self>. this produces an empty asciistring.

        """
        return _TCollection.TCollection_AsciiString_Clear(self, *args)

    def Copy(self, *args):
        r"""

        Parameters
        ----------
        fromwhere: str

        Return
        -------
        None

        Description
        -----------
        Copy <fromwhere> to <self>. used as operator = example: astring = anothercstring;.

        Parameters
        ----------
        fromwhere: str

        Return
        -------
        None

        Description
        -----------
        Copy <fromwhere> to <self>. used as operator = example: astring = anotherstring;.

        """
        return _TCollection.TCollection_AsciiString_Copy(self, *args)

    def EndsWith(self, *args):
        r"""

        Parameters
        ----------
        theEndString: str

        Return
        -------
        bool

        Description
        -----------
        Determines whether the end of this string instance matches the specified string.

        """
        return _TCollection.TCollection_AsciiString_EndsWith(self, *args)

    def FirstLocationInSet(self, *args):
        r"""

        Parameters
        ----------
        Set: str
        FromIndex: int
        ToIndex: int

        Return
        -------
        int

        Description
        -----------
        Returns the index of the first character of <self> that is present in <set>. the search begins to the index fromindex and ends to the the index toindex. returns zero if failure. raises an exception if fromindex or toindex is out of range. example: before me = 'aabacaa', s = 'aa', fromindex = 1, toindex = 7 after me = 'aabacaa' returns 1.

        """
        return _TCollection.TCollection_AsciiString_FirstLocationInSet(self, *args)

    def FirstLocationNotInSet(self, *args):
        r"""

        Parameters
        ----------
        Set: str
        FromIndex: int
        ToIndex: int

        Return
        -------
        int

        Description
        -----------
        Returns the index of the first character of <self> that is not present in the set <set>. the search begins to the index fromindex and ends to the the index toindex in <self>. returns zero if failure. raises an exception if fromindex or toindex is out of range. example: before me = 'aabacaa', s = 'aa', fromindex = 1, toindex = 7 after me = 'aabacaa' returns 3.

        """
        return _TCollection.TCollection_AsciiString_FirstLocationNotInSet(self, *args)

    @staticmethod
    def HashCode(*args):
        r"""

        Parameters
        ----------
        theAsciiString: str
        theUpperBound: int

        Return
        -------
        int

        Description
        -----------
        Computes a hash code for the given ascii string, in the range [1, theupperbound]. returns the same integer value as the hash function for tcollection_extendedstring @param theasciistring the ascii string which hash code is to be computed @param theupperbound the upper bound of the range a computing hash code must be within return a computed hash code, in the range [1, theupperbound].

        """
        return _TCollection.TCollection_AsciiString_HashCode(*args)

    def Insert(self, *args):
        r"""

        Parameters
        ----------
        where: int
        what: Standard_Character

        Return
        -------
        None

        Description
        -----------
        Inserts a character at position <where>. example: astring contains 'hy not ?' astring.insert(1,'w'); gives 'why not ?' astring contains 'wh' astring.insert(3,'y'); gives 'why' astring contains 'way' astring.insert(2,'h'); gives 'why'.

        Parameters
        ----------
        where: int
        what: str

        Return
        -------
        None

        Description
        -----------
        Inserts a cstring at position <where>. example: astring contains 'o more' astring.insert(2,'nce'); gives 'once more'.

        Parameters
        ----------
        where: int
        what: str

        Return
        -------
        None

        Description
        -----------
        Inserts a asciistring at position <where>.

        """
        return _TCollection.TCollection_AsciiString_Insert(self, *args)

    def InsertAfter(self, *args):
        r"""

        Parameters
        ----------
        Index: int
        other: str

        Return
        -------
        None

        Description
        -----------
        Pushing a string after a specific index in the string <self>. raises an exception if index is out of bounds. - less than 0 (insertafter), or less than 1 (insertbefore), or - greater than the number of characters in this ascii string. example: before me = 'cde' , index = 0 , other = 'ab' after me = 'abcde' , other = 'ab'.

        """
        return _TCollection.TCollection_AsciiString_InsertAfter(self, *args)

    def InsertBefore(self, *args):
        r"""

        Parameters
        ----------
        Index: int
        other: str

        Return
        -------
        None

        Description
        -----------
        Pushing a string before a specific index in the string <self>. raises an exception if index is out of bounds. - less than 0 (insertafter), or less than 1 (insertbefore), or - greater than the number of characters in this ascii string. example: before me = 'cde' , index = 1 , other = 'ab' after me = 'abcde' , other = 'ab'.

        """
        return _TCollection.TCollection_AsciiString_InsertBefore(self, *args)

    def IntegerValue(self, *args):
        r"""
        Return
        -------
        int

        Description
        -----------
        Converts a asciistring containing a numeric expression to an integer. example: '215' returns 215.

        """
        return _TCollection.TCollection_AsciiString_IntegerValue(self, *args)

    def IsAscii(self, *args):
        r"""
        Return
        -------
        bool

        Description
        -----------
        Returns true if the asciistring contains only ascii characters between ' ' and '~'. this means no control character and no extended ascii code.

        """
        return _TCollection.TCollection_AsciiString_IsAscii(self, *args)

    def IsDifferent(self, *args):
        r"""

        Parameters
        ----------
        other: str

        Return
        -------
        bool

        Description
        -----------
        Returns true if there are differences between the characters in this ascii string and ascii string other. note that this method is an alias of operator !=.

        Parameters
        ----------
        other: str

        Return
        -------
        bool

        Description
        -----------
        Returns true if there are differences between the characters in this ascii string and ascii string other. note that this method is an alias of operator !=.

        """
        return _TCollection.TCollection_AsciiString_IsDifferent(self, *args)

    def IsEmpty(self, *args):
        r"""
        Return
        -------
        bool

        Description
        -----------
        Returns true if the string <self> contains zero character.

        """
        return _TCollection.TCollection_AsciiString_IsEmpty(self, *args)

    @staticmethod
    def IsEqual(*args):
        r"""

        Parameters
        ----------
        other: str

        Return
        -------
        bool

        Description
        -----------
        Returns true if the characters in this ascii string are identical to the characters in ascii string other. note that this method is an alias of operator ==.

        Parameters
        ----------
        other: str

        Return
        -------
        bool

        Description
        -----------
        Returns true if the characters in this ascii string are identical to the characters in ascii string other. note that this method is an alias of operator ==.

        Parameters
        ----------
        string1: str
        string2: str

        Return
        -------
        bool

        Description
        -----------
        Returns true when the two strings are the same. (just for hashcode for asciistring).

        Parameters
        ----------
        string1: str
        string2: str

        Return
        -------
        bool

        Description
        -----------
        Returns true when the two strings are the same. (just for hashcode for asciistring).

        """
        return _TCollection.TCollection_AsciiString_IsEqual(*args)

    def IsGreater(self, *args):
        r"""

        Parameters
        ----------
        other: str

        Return
        -------
        bool

        Description
        -----------
        Returns true if <self> is 'ascii' greater than <other>.

        Parameters
        ----------
        other: str

        Return
        -------
        bool

        Description
        -----------
        Returns true if <self> is 'ascii' greater than <other>.

        """
        return _TCollection.TCollection_AsciiString_IsGreater(self, *args)

    def IsIntegerValue(self, *args):
        r"""
        Return
        -------
        bool

        Description
        -----------
        Returns true if the asciistring contains an integer value. note: an integer value is considered to be a real value as well.

        """
        return _TCollection.TCollection_AsciiString_IsIntegerValue(self, *args)

    def IsLess(self, *args):
        r"""

        Parameters
        ----------
        other: str

        Return
        -------
        bool

        Description
        -----------
        Returns true if <self> is 'ascii' less than <other>.

        Parameters
        ----------
        other: str

        Return
        -------
        bool

        Description
        -----------
        Returns true if <self> is 'ascii' less than <other>.

        """
        return _TCollection.TCollection_AsciiString_IsLess(self, *args)

    def IsRealValue(self, *args):
        r"""

        Parameters
        ----------
        theToCheckFull: bool (optional, default to Standard_False)

        Return
        -------
        bool

        Description
        -----------
        Returns true if the asciistring starts with some characters that can be interpreted as integer or real value. @param thetocheckfull [in] when true, checks if entire string defines a real value;  otherwise checks if string starts with a real value note: an integer value is considered to be a real value as well.

        """
        return _TCollection.TCollection_AsciiString_IsRealValue(self, *args)

    @staticmethod
    def IsSameString(*args):
        r"""

        Parameters
        ----------
        theString1: str
        theString2: str
        theIsCaseSensitive: bool

        Return
        -------
        bool

        Description
        -----------
        Returns true if the strings contain same characters.

        """
        return _TCollection.TCollection_AsciiString_IsSameString(*args)

    def LeftAdjust(self, *args):
        r"""
        Return
        -------
        None

        Description
        -----------
        Removes all space characters in the beginning of the string.

        """
        return _TCollection.TCollection_AsciiString_LeftAdjust(self, *args)

    def LeftJustify(self, *args):
        r"""

        Parameters
        ----------
        Width: int
        Filler: Standard_Character

        Return
        -------
        None

        Description
        -----------
        Left justify length becomes equal to width and the new characters are equal to filler. if width < length nothing happens. raises an exception if width is less than zero. example: before me = 'abcdef' , width = 9 , filler = ' ' after me = 'abcdef '.

        """
        return _TCollection.TCollection_AsciiString_LeftJustify(self, *args)

    def Length(self, *args):
        r"""
        Return
        -------
        int

        Description
        -----------
        Returns number of characters in <self>. this is the same functionality as 'strlen' in c. example tcollection_asciistring myalphabet('abcdef'); assert ( myalphabet.length() == 6 ); - 1 is the position of the first character in this string. - the length of this string gives the position of its last character. - positions less than or equal to zero, or greater than the length of this string are invalid in functions which identify a character of this string by its position.

        """
        return _TCollection.TCollection_AsciiString_Length(self, *args)

    def Location(self, *args):
        r"""

        Parameters
        ----------
        other: str
        FromIndex: int
        ToIndex: int

        Return
        -------
        int

        Description
        -----------
        Returns an index in the string <self> of the first occurrence of the string s in the string <self> from the starting index fromindex to the ending index toindex returns zero if failure raises an exception if fromindex or toindex is out of range. example: before me = 'aabaaaa', s = 'aa', fromindex = 1, toindex = 7 after me = 'aabaaaa' returns 4.

        Parameters
        ----------
        N: int
        C: Standard_Character
        FromIndex: int
        ToIndex: int

        Return
        -------
        int

        Description
        -----------
        Returns the index of the nth occurrence of the character c in the string <self> from the starting index fromindex to the ending index toindex. returns zero if failure. raises an exception if fromindex or toindex is out of range. example: before me = 'aabaa', n = 3, c = 'a', fromindex = 1, toindex = 5 after me = 'aabaa' returns 5.

        """
        return _TCollection.TCollection_AsciiString_Location(self, *args)

    def LowerCase(self, *args):
        r"""
        Return
        -------
        None

        Description
        -----------
        Converts <self> to its lower-case equivalent. example tcollection_asciistring mystring('hello dolly'); mystring.uppercase(); assert ( mystring == 'hello dolly' ); mystring.lowercase(); assert ( mystring == 'hello dolly' );.

        """
        return _TCollection.TCollection_AsciiString_LowerCase(self, *args)

    def Prepend(self, *args):
        r"""

        Parameters
        ----------
        other: str

        Return
        -------
        None

        Description
        -----------
        Inserts the string other at the beginning of this ascii string. example tcollection_asciistring myalphabet('cde'); tcollection_asciistring mybegin('ab'); myalphabet.prepend(mybegin); assert ( myalphabet == 'abcde' );.

        """
        return _TCollection.TCollection_AsciiString_Prepend(self, *args)

    def PrintToString(self):
        r"""PrintToString(TCollection_AsciiString self) -> std::string"""
        return _TCollection.TCollection_AsciiString_PrintToString(self)

    def ReadFromString(self, src):
        r"""ReadFromString(TCollection_AsciiString self, std::string src)"""
        return _TCollection.TCollection_AsciiString_ReadFromString(self, src)

    def RealValue(self, *args):
        r"""
        Return
        -------
        float

        Description
        -----------
        Converts an asciistring containing a numeric expression. to a real. example: ex: '215' returns 215.0. ex: '3.14159267' returns 3.14159267.

        """
        return _TCollection.TCollection_AsciiString_RealValue(self, *args)

    def Remove(self, *args):
        r"""

        Parameters
        ----------
        where: int
        ahowmany: int (optional, default to 1)

        Return
        -------
        None

        Description
        -----------
        Erases <ahowmany> characters from position <where>, <where> included. example: astring contains 'hello' astring.remove(2,2) erases 2 characters from position 2 this gives 'hlo'.

        """
        return _TCollection.TCollection_AsciiString_Remove(self, *args)

    def RemoveAll(self, *args):
        r"""

        Parameters
        ----------
        C: Standard_Character
        CaseSensitive: bool

        Return
        -------
        None

        Description
        -----------
        Remove all the occurrences of the character c in the string. example: before me = 'hellllo', c = 'l' , casesensitive = true after me = 'hello'.

        Parameters
        ----------
        what: Standard_Character

        Return
        -------
        None

        Description
        -----------
        Removes every <what> characters from <self>.

        """
        return _TCollection.TCollection_AsciiString_RemoveAll(self, *args)

    def RightAdjust(self, *args):
        r"""
        Return
        -------
        None

        Description
        -----------
        Removes all space characters at the end of the string.

        """
        return _TCollection.TCollection_AsciiString_RightAdjust(self, *args)

    def RightJustify(self, *args):
        r"""

        Parameters
        ----------
        Width: int
        Filler: Standard_Character

        Return
        -------
        None

        Description
        -----------
        Right justify. length becomes equal to width and the new characters are equal to filler. if width < length nothing happens. raises an exception if width is less than zero. example: before me = 'abcdef' , width = 9 , filler = ' ' after me = ' abcdef'.

        """
        return _TCollection.TCollection_AsciiString_RightJustify(self, *args)

    def Search(self, *args):
        r"""

        Parameters
        ----------
        what: str

        Return
        -------
        int

        Description
        -----------
        Searches a cstring in <self> from the beginning and returns position of first item <what> matching. it returns -1 if not found. example: astring contains 'sample single test' astring.search('le') returns 5.

        Parameters
        ----------
        what: str

        Return
        -------
        int

        Description
        -----------
        Searches an asciistring in <self> from the beginning and returns position of first item <what> matching. it returns -1 if not found.

        """
        return _TCollection.TCollection_AsciiString_Search(self, *args)

    def SearchFromEnd(self, *args):
        r"""

        Parameters
        ----------
        what: str

        Return
        -------
        int

        Description
        -----------
        Searches a cstring in a asciistring from the end and returns position of first item <what> matching. it returns -1 if not found. example: astring contains 'sample single test' astring.searchfromend('le') returns 12.

        Parameters
        ----------
        what: str

        Return
        -------
        int

        Description
        -----------
        Searches a asciistring in another asciistring from the end and returns position of first item <what> matching. it returns -1 if not found.

        """
        return _TCollection.TCollection_AsciiString_SearchFromEnd(self, *args)

    def SetValue(self, *args):
        r"""

        Parameters
        ----------
        where: int
        what: Standard_Character

        Return
        -------
        None

        Description
        -----------
        Replaces one character in the asciistring at position <where>. if <where> is less than zero or greater than the length of <self> an exception is raised. example: astring contains 'garbake' astring.replace(6,'g') gives <self> = 'garbage'.

        Parameters
        ----------
        where: int
        what: str

        Return
        -------
        None

        Description
        -----------
        Replaces a part of <self> by a cstring. if <where> is less than zero or greater than the length of <self> an exception is raised. example: astring contains 'abcde' astring.setvalue(4,'1234567') gives <self> = 'abc1234567'.

        Parameters
        ----------
        where: int
        what: str

        Return
        -------
        None

        Description
        -----------
        Replaces a part of <self> by another asciistring.

        """
        return _TCollection.TCollection_AsciiString_SetValue(self, *args)

    def Split(self, *args):
        r"""

        Parameters
        ----------
        where: int

        Return
        -------
        TCollection_AsciiString

        Description
        -----------
        Splits a asciistring into two sub-strings. example: astring contains 'abcdefg' astring.split(3) gives <self> = 'abc' and returns 'defg'.

        """
        return _TCollection.TCollection_AsciiString_Split(self, *args)

    def StartsWith(self, *args):
        r"""

        Parameters
        ----------
        theStartString: str

        Return
        -------
        bool

        Description
        -----------
        Determines whether the beginning of this string instance matches the specified string.

        """
        return _TCollection.TCollection_AsciiString_StartsWith(self, *args)

    def SubString(self, *args):
        r"""

        Parameters
        ----------
        FromIndex: int
        ToIndex: int

        Return
        -------
        TCollection_AsciiString

        Description
        -----------
        Creation of a sub-string of the string <self>. the sub-string starts to the index fromindex and ends to the index toindex. raises an exception if toindex or fromindex is out of bounds example: before me = 'abcdefg', toindex=3, fromindex=6 after me = 'abcdefg' returns 'cdef'.

        """
        return _TCollection.TCollection_AsciiString_SubString(self, *args)

    def Swap(self, *args):
        r"""

        Parameters
        ----------
        theOther: str

        Return
        -------
        None

        Description
        -----------
        Exchange the data of two strings (without reallocating memory).

        """
        return _TCollection.TCollection_AsciiString_Swap(self, *args)

    def ToCString(self, *args):
        r"""
        Return
        -------
        str

        Description
        -----------
        Returns pointer to asciistring (char *). this is useful for some casual manipulations. warning: because this 'char *' is 'const', you can't modify its contents.

        """
        return _TCollection.TCollection_AsciiString_ToCString(self, *args)

    def Token(self, *args):
        r"""

        Parameters
        ----------
        separators: str (optional, default to '	')
        whichone: int (optional, default to 1)

        Return
        -------
        TCollection_AsciiString

        Description
        -----------
        Extracts <whichone> token from <self>. by default, the <separators> is set to space and tabulation. by default, the token extracted is the first one (whichone = 1). <separators> contains all separators you need. if no token indexed by <whichone> is found, it returns empty asciistring. example: astring contains 'this is a message' astring.token() returns 'this' astring.token(' ',4) returns 'message' astring.token(' ',2) returns 'is' astring.token(' ',9) returns '' other separators than space character and tabulation are allowed: astring contains '1234; test:message , value' astring.token('; :,',4) returns 'value' astring.token('; :,',2) returns 'test'.

        """
        return _TCollection.TCollection_AsciiString_Token(self, *args)

    def Trunc(self, *args):
        r"""

        Parameters
        ----------
        ahowmany: int

        Return
        -------
        None

        Description
        -----------
        Truncates <self> to <ahowmany> characters. example: me = 'hello dolly' -> trunc(3) -> me = 'hel'.

        """
        return _TCollection.TCollection_AsciiString_Trunc(self, *args)

    def UpperCase(self, *args):
        r"""
        Return
        -------
        None

        Description
        -----------
        Converts <self> to its upper-case equivalent.

        """
        return _TCollection.TCollection_AsciiString_UpperCase(self, *args)

    def UsefullLength(self, *args):
        r"""
        Return
        -------
        int

        Description
        -----------
        Length of the string ignoring all spaces (' ') and the control character at the end.

        """
        return _TCollection.TCollection_AsciiString_UsefullLength(self, *args)

    def Value(self, *args):
        r"""

        Parameters
        ----------
        where: int

        Return
        -------
        Standard_Character

        Description
        -----------
        Returns character at position <where> in <self>. if <where> is less than zero or greater than the length of <self>, an exception is raised. example: astring contains 'hello' astring.value(2) returns 'e'.

        """
        return _TCollection.TCollection_AsciiString_Value(self, *args)

    def __ne__(self, right):
        try:
            return self.__ne_wrapper__(right)
        except:
            return True


    def __ne_wrapper__(self, *args):
        r"""
        __ne_wrapper__(TCollection_AsciiString self, Standard_CString const other) -> bool
        __ne_wrapper__(TCollection_AsciiString self, TCollection_AsciiString other) -> bool
        """
        return _TCollection.TCollection_AsciiString___ne_wrapper__(self, *args)

    def __ne__(self, right):
        try:
            return self.__ne_wrapper__(right)
        except:
            return True


    def __add__(self, *args):
        r"""

        Parameters
        ----------
        other: Standard_Character

        Return
        -------
        TCollection_AsciiString

        Description
        -----------
        No available documentation.

        Parameters
        ----------
        other: int

        Return
        -------
        TCollection_AsciiString

        Description
        -----------
        No available documentation.

        Parameters
        ----------
        other: float

        Return
        -------
        TCollection_AsciiString

        Description
        -----------
        No available documentation.

        Parameters
        ----------
        other: str

        Return
        -------
        TCollection_AsciiString

        Description
        -----------
        No available documentation.

        Parameters
        ----------
        other: str

        Return
        -------
        TCollection_AsciiString

        Description
        -----------
        No available documentation.

        """
        return _TCollection.TCollection_AsciiString___add__(self, *args)

    def __iadd__(self, right):
        self.__iadd_wrapper__(right)
        return self


    def __iadd__(self, right):
        self.__iadd_wrapper__(right)
        return self


    def __iadd__(self, right):
        self.__iadd_wrapper__(right)
        return self


    def __iadd__(self, right):
        self.__iadd_wrapper__(right)
        return self


    def __iadd_wrapper__(self, *args):
        r"""
        __iadd_wrapper__(TCollection_AsciiString self, Standard_Character const other)
        __iadd_wrapper__(TCollection_AsciiString self, Standard_Integer const other)
        __iadd_wrapper__(TCollection_AsciiString self, Standard_Real const other)
        __iadd_wrapper__(TCollection_AsciiString self, Standard_CString const other)
        __iadd_wrapper__(TCollection_AsciiString self, TCollection_AsciiString other)
        """
        return _TCollection.TCollection_AsciiString___iadd_wrapper__(self, *args)

    def __iadd__(self, right):
        self.__iadd_wrapper__(right)
        return self


    def __eq__(self, right):
        try:
            return self.__eq_wrapper__(right)
        except:
            return False


    def __eq_wrapper__(self, *args):
        r"""
        __eq_wrapper__(TCollection_AsciiString self, Standard_CString const other) -> bool
        __eq_wrapper__(TCollection_AsciiString self, TCollection_AsciiString other) -> bool
        """
        return _TCollection.TCollection_AsciiString___eq_wrapper__(self, *args)

    def __eq__(self, right):
        try:
            return self.__eq_wrapper__(right)
        except:
            return False


    __repr__ = _dumps_object

    __swig_destroy__ = _TCollection.delete_TCollection_AsciiString

# Register TCollection_AsciiString in _TCollection:
_TCollection.TCollection_AsciiString_swigregister(TCollection_AsciiString)
class TCollection_ExtendedString(object):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr

    def __init__(self, *args):
        r"""
        Return
        -------
        None

        Description
        -----------
        Initializes a extendedstring to an empty extendedstring.

        Parameters
        ----------
        astring: str
        isMultiByte: bool (optional, default to Standard_False)

        Return
        -------
        None

        Description
        -----------
        Creation by converting a cstring to an extended string. if <ismultibyte> is true then the string is treated as having utf-8 coding. if it is not a utf-8 then <ismultibyte> is ignored and each character is copied to extcharacter.

        Parameters
        ----------
        astring: Standard_ExtString

        Return
        -------
        None

        Description
        -----------
        Creation by converting an extstring to an extended string.

        Parameters
        ----------
        theStringUtf: Standard_WideChar *

        Return
        -------
        None

        Description
        -----------
        Initialize from wide-char string considering it as unicode string (the size of wide char is a platform-dependent - e.g. on windows wchar_t is utf-16). //! this constructor is unavailable if application is built with deprecated msvc option '-zc:wchar_t-', since occt itself is never built with this option.

        Parameters
        ----------
        aChar: Standard_Character

        Return
        -------
        None

        Description
        -----------
        Initializes a asciistring with a single character.

        Parameters
        ----------
        aChar: Standard_ExtCharacter

        Return
        -------
        None

        Description
        -----------
        Initializes a extendedstring with a single character.

        Parameters
        ----------
        length: int
        filler: Standard_ExtCharacter

        Return
        -------
        None

        Description
        -----------
        Initializes a extendedstring with <length> space allocated. and filled with <filler>.this is useful for buffers.

        Parameters
        ----------
        value: int

        Return
        -------
        None

        Description
        -----------
        Initializes an extendedstring with an integer value.

        Parameters
        ----------
        value: float

        Return
        -------
        None

        Description
        -----------
        Initializes an extendedstring with a real value.

        Parameters
        ----------
        astring: str

        Return
        -------
        None

        Description
        -----------
        Initializes a extendedstring with another extendedstring.

        Parameters
        ----------
        theOther: str

        Return
        -------
        None

        Description
        -----------
        Move constructor.

        Parameters
        ----------
        astring: str
        isMultiByte: bool (optional, default to Standard_True)

        Return
        -------
        None

        Description
        -----------
        Creation by converting an ascii string to an extended string. the string is treated as having utf-8 coding. if it is not a utf-8 or multi byte then each character is copied to extcharacter.

        """
        _TCollection.TCollection_ExtendedString_swiginit(self, _TCollection.new_TCollection_ExtendedString(*args))

    def AssignCat(self, *args):
        r"""

        Parameters
        ----------
        other: str

        Return
        -------
        None

        Description
        -----------
        Appends the other extended string to this extended string. note that this method is an alias of operator +=. example: astring += anotherstring.

        Parameters
        ----------
        theChar: Standard_Utf16Char

        Return
        -------
        None

        Description
        -----------
        Appends the utf16 char to this extended string.

        """
        return _TCollection.TCollection_ExtendedString_AssignCat(self, *args)

    def Cat(self, *args):
        r"""

        Parameters
        ----------
        other: str

        Return
        -------
        TCollection_ExtendedString

        Description
        -----------
        Appends <other> to me.

        """
        return _TCollection.TCollection_ExtendedString_Cat(self, *args)

    def ChangeAll(self, *args):
        r"""

        Parameters
        ----------
        aChar: Standard_ExtCharacter
        NewChar: Standard_ExtCharacter

        Return
        -------
        None

        Description
        -----------
        Substitutes all the characters equal to achar by newchar in the extendedstring <self>. the substitution can be case sensitive. if you don't use default case sensitive, no matter whether achar is uppercase or not.

        """
        return _TCollection.TCollection_ExtendedString_ChangeAll(self, *args)

    def Clear(self, *args):
        r"""
        Return
        -------
        None

        Description
        -----------
        Removes all characters contained in <self>. this produces an empty extendedstring.

        """
        return _TCollection.TCollection_ExtendedString_Clear(self, *args)

    def Copy(self, *args):
        r"""

        Parameters
        ----------
        fromwhere: str

        Return
        -------
        None

        Description
        -----------
        Copy <fromwhere> to <self>. used as operator =.

        """
        return _TCollection.TCollection_ExtendedString_Copy(self, *args)

    def EndsWith(self, *args):
        r"""

        Parameters
        ----------
        theEndString: str

        Return
        -------
        bool

        Description
        -----------
        Determines whether the end of this string instance matches the specified string.

        """
        return _TCollection.TCollection_ExtendedString_EndsWith(self, *args)

    @staticmethod
    def HashCode(*args):
        r"""

        Parameters
        ----------
        theString: str
        theUpperBound: int

        Return
        -------
        int

        Description
        -----------
        Returns a hashed value for the extended string within the range 1 .. theupper. note: if string is ascii, the computed value is the same as the value computed with the hashcode function on a tcollection_asciistring string composed with equivalent ascii characters. @param thestring the extended string which hash code is to be computed @param theupperbound the upper bound of the range a computing hash code must be within return a computed hash code, in the range [1, theupperbound].

        """
        return _TCollection.TCollection_ExtendedString_HashCode(*args)

    def Insert(self, *args):
        r"""

        Parameters
        ----------
        where: int
        what: Standard_ExtCharacter

        Return
        -------
        None

        Description
        -----------
        Insert a character at position <where>.

        Parameters
        ----------
        where: int
        what: str

        Return
        -------
        None

        Description
        -----------
        Insert a extendedstring at position <where>.

        """
        return _TCollection.TCollection_ExtendedString_Insert(self, *args)

    def IsAscii(self, *args):
        r"""
        Return
        -------
        bool

        Description
        -----------
        Returns true if the extendedstring contains only 'ascii range' characters .

        """
        return _TCollection.TCollection_ExtendedString_IsAscii(self, *args)

    def IsDifferent(self, *args):
        r"""

        Parameters
        ----------
        other: Standard_ExtString

        Return
        -------
        bool

        Description
        -----------
        Returns true if there are differences between the characters in this extended string and the other extended string. note that this method is an alias of operator !=.

        Parameters
        ----------
        other: str

        Return
        -------
        bool

        Description
        -----------
        Returns true if there are differences between the characters in this extended string and the other extended string. note that this method is an alias of operator !=.

        """
        return _TCollection.TCollection_ExtendedString_IsDifferent(self, *args)

    def IsEmpty(self, *args):
        r"""
        Return
        -------
        bool

        Description
        -----------
        Returns true if this string contains no characters.

        """
        return _TCollection.TCollection_ExtendedString_IsEmpty(self, *args)

    @staticmethod
    def IsEqual(*args):
        r"""

        Parameters
        ----------
        other: Standard_ExtString

        Return
        -------
        bool

        Description
        -----------
        Returns true if the characters in this extended string are identical to the characters in the other extended string. note that this method is an alias of operator ==.

        Parameters
        ----------
        other: str

        Return
        -------
        bool

        Description
        -----------
        Returns true if the characters in this extended string are identical to the characters in the other extended string. note that this method is an alias of operator ==.

        Parameters
        ----------
        theString1: str
        theString2: str

        Return
        -------
        bool

        Description
        -----------
        Returns true if the characters in this extended string are identical to the characters in the other extended string. note that this method is an alias of operator ==.

        """
        return _TCollection.TCollection_ExtendedString_IsEqual(*args)

    def IsGreater(self, *args):
        r"""

        Parameters
        ----------
        other: Standard_ExtString

        Return
        -------
        bool

        Description
        -----------
        Returns true if <self> is greater than <other>.

        Parameters
        ----------
        other: str

        Return
        -------
        bool

        Description
        -----------
        Returns true if <self> is greater than <other>.

        """
        return _TCollection.TCollection_ExtendedString_IsGreater(self, *args)

    def IsLess(self, *args):
        r"""

        Parameters
        ----------
        other: Standard_ExtString

        Return
        -------
        bool

        Description
        -----------
        Returns true if <self> is less than <other>.

        Parameters
        ----------
        other: str

        Return
        -------
        bool

        Description
        -----------
        Returns true if <self> is less than <other>.

        """
        return _TCollection.TCollection_ExtendedString_IsLess(self, *args)

    def Length(self, *args):
        r"""
        Return
        -------
        int

        Description
        -----------
        Returns the number of 16-bit code units (might be greater than number of unicode symbols if string contains surrogate pairs).

        """
        return _TCollection.TCollection_ExtendedString_Length(self, *args)

    def LengthOfCString(self, *args):
        r"""
        Return
        -------
        int

        Description
        -----------
        Returns expected cstring length in utf8 coding. it can be used for memory calculation before converting to cstring containing symbols in utf8 coding.

        """
        return _TCollection.TCollection_ExtendedString_LengthOfCString(self, *args)

    def PrintToString(self):
        r"""PrintToString(TCollection_ExtendedString self) -> std::string"""
        return _TCollection.TCollection_ExtendedString_PrintToString(self)

    def Remove(self, *args):
        r"""

        Parameters
        ----------
        where: int
        ahowmany: int (optional, default to 1)

        Return
        -------
        None

        Description
        -----------
        Erases <ahowmany> characters from position <where>,<where> included.

        """
        return _TCollection.TCollection_ExtendedString_Remove(self, *args)

    def RemoveAll(self, *args):
        r"""

        Parameters
        ----------
        what: Standard_ExtCharacter

        Return
        -------
        None

        Description
        -----------
        Removes every <what> characters from <self>.

        """
        return _TCollection.TCollection_ExtendedString_RemoveAll(self, *args)

    def Search(self, *args):
        r"""

        Parameters
        ----------
        what: str

        Return
        -------
        int

        Description
        -----------
        Searches a extendedstring in <self> from the beginning and returns position of first item <what> matching. it returns -1 if not found.

        """
        return _TCollection.TCollection_ExtendedString_Search(self, *args)

    def SearchFromEnd(self, *args):
        r"""

        Parameters
        ----------
        what: str

        Return
        -------
        int

        Description
        -----------
        Searches a extendedstring in another extendedstring from the end and returns position of first item <what> matching. it returns -1 if not found.

        """
        return _TCollection.TCollection_ExtendedString_SearchFromEnd(self, *args)

    def SetValue(self, *args):
        r"""

        Parameters
        ----------
        where: int
        what: Standard_ExtCharacter

        Return
        -------
        None

        Description
        -----------
        Replaces one character in the extendedstring at position <where>. if <where> is less than zero or greater than the length of <self> an exception is raised.

        Parameters
        ----------
        where: int
        what: str

        Return
        -------
        None

        Description
        -----------
        Replaces a part of <self> by another extendedstring see above.

        """
        return _TCollection.TCollection_ExtendedString_SetValue(self, *args)

    def Split(self, *args):
        r"""

        Parameters
        ----------
        where: int

        Return
        -------
        TCollection_ExtendedString

        Description
        -----------
        Splits this extended string into two sub-strings at position where. - the second sub-string (from position where + 1 of this string to the end) is returned in a new extended string. - this extended string is modified: its last characters are removed, it becomes equal to the first sub-string (from the first character to position where). example: astring contains 'abcdefg' astring.split(3) gives <self> = 'abc' and returns 'defg'.

        """
        return _TCollection.TCollection_ExtendedString_Split(self, *args)

    def StartsWith(self, *args):
        r"""

        Parameters
        ----------
        theStartString: str

        Return
        -------
        bool

        Description
        -----------
        Determines whether the beginning of this string instance matches the specified string.

        """
        return _TCollection.TCollection_ExtendedString_StartsWith(self, *args)

    def Swap(self, *args):
        r"""

        Parameters
        ----------
        theOther: str

        Return
        -------
        None

        Description
        -----------
        Exchange the data of two strings (without reallocating memory).

        """
        return _TCollection.TCollection_ExtendedString_Swap(self, *args)

    def ToExtString(self, *args):
        r"""
        Return
        -------
        Standard_ExtString

        Description
        -----------
        Returns pointer to extstring.

        """
        return _TCollection.TCollection_ExtendedString_ToExtString(self, *args)

    def ToUTF8CString(self, *args):
        r"""

        Parameters
        ----------
        theCString: Standard_PCharacter

        Return
        -------
        int

        Description
        -----------
        Converts the internal <mystring> to utf8 coding and returns length of the out cstring. a memory for the <thecstring> should be allocated before call!.

        """
        return _TCollection.TCollection_ExtendedString_ToUTF8CString(self, *args)

    def Token(self, *args):
        r"""

        Parameters
        ----------
        separators: Standard_ExtString
        whichone: int (optional, default to 1)

        Return
        -------
        TCollection_ExtendedString

        Description
        -----------
        Extracts <whichone> token from <self>. by default, the <separators> is set to space and tabulation. by default, the token extracted is the first one (whichone = 1). <separators> contains all separators you need. if no token indexed by <whichone> is found, it returns an empty asciistring. example: astring contains 'this is a message' astring.token() returns 'this' astring.token(' ',4) returns 'message' astring.token(' ',2) returns 'is' astring.token(' ',9) returns '' other separators than space character and tabulation are allowed: astring contains '1234; test:message , value' astring.token('; :,',4) returns 'value' astring.token('; :,',2) returns 'test'.

        """
        return _TCollection.TCollection_ExtendedString_Token(self, *args)

    def Trunc(self, *args):
        r"""

        Parameters
        ----------
        ahowmany: int

        Return
        -------
        None

        Description
        -----------
        Truncates <self> to <ahowmany> characters. example: me = 'hello dolly' -> trunc(3) -> me = 'hel' exceptions standard_outofrange if ahowmany is greater than the length of this string.

        """
        return _TCollection.TCollection_ExtendedString_Trunc(self, *args)

    def Value(self, *args):
        r"""

        Parameters
        ----------
        where: int

        Return
        -------
        Standard_ExtCharacter

        Description
        -----------
        Returns character at position <where> in <self>. if <where> is less than zero or greater than the length of <self>, an exception is raised. example: astring contains 'hello' astring.value(2) returns 'e' exceptions standard_outofrange if where lies outside the bounds of this extended string.

        """
        return _TCollection.TCollection_ExtendedString_Value(self, *args)

    def __ne__(self, right):
        try:
            return self.__ne_wrapper__(right)
        except:
            return True


    def __ne_wrapper__(self, *args):
        r"""
        __ne_wrapper__(TCollection_ExtendedString self, Standard_ExtString const other) -> bool
        __ne_wrapper__(TCollection_ExtendedString self, TCollection_ExtendedString other) -> bool
        """
        return _TCollection.TCollection_ExtendedString___ne_wrapper__(self, *args)

    def __ne__(self, right):
        try:
            return self.__ne_wrapper__(right)
        except:
            return True


    def __add__(self, *args):
        r"""

        Parameters
        ----------
        other: str

        Return
        -------
        TCollection_ExtendedString

        Description
        -----------
        No available documentation.

        """
        return _TCollection.TCollection_ExtendedString___add__(self, *args)

    def __iadd_wrapper__(self, other):
        r"""__iadd_wrapper__(TCollection_ExtendedString self, TCollection_ExtendedString other)"""
        return _TCollection.TCollection_ExtendedString___iadd_wrapper__(self, other)

    def __iadd__(self, right):
        self.__iadd_wrapper__(right)
        return self


    def __eq__(self, right):
        try:
            return self.__eq_wrapper__(right)
        except:
            return False


    def __eq_wrapper__(self, *args):
        r"""
        __eq_wrapper__(TCollection_ExtendedString self, Standard_ExtString const other) -> bool
        __eq_wrapper__(TCollection_ExtendedString self, TCollection_ExtendedString other) -> bool
        """
        return _TCollection.TCollection_ExtendedString___eq_wrapper__(self, *args)

    def __eq__(self, right):
        try:
            return self.__eq_wrapper__(right)
        except:
            return False


    __repr__ = _dumps_object

    @methodnotwrapped
    def ToWideString(self):
    	pass

    __swig_destroy__ = _TCollection.delete_TCollection_ExtendedString

# Register TCollection_ExtendedString in _TCollection:
_TCollection.TCollection_ExtendedString_swigregister(TCollection_ExtendedString)
class TCollection_HAsciiString(OCC.Core.Standard.Standard_Transient):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr

    def __init__(self, *args):
        r"""
        Return
        -------
        None

        Description
        -----------
        Initializes a hasciistring to an empty asciistring.

        Parameters
        ----------
        message: str

        Return
        -------
        None

        Description
        -----------
        Initializes a hasciistring with a cstring.

        Parameters
        ----------
        aChar: Standard_Character

        Return
        -------
        None

        Description
        -----------
        Initializes a hasciistring with a single character.

        Parameters
        ----------
        length: int
        filler: Standard_Character

        Return
        -------
        None

        Description
        -----------
        Initializes a hasciistring with <length> space allocated. and filled with <filler>.this is useful for buffers.

        Parameters
        ----------
        value: int

        Return
        -------
        None

        Description
        -----------
        Initializes a hasciistring with an integer value.

        Parameters
        ----------
        value: float

        Return
        -------
        None

        Description
        -----------
        Initializes a hasciistring with a real value.

        Parameters
        ----------
        aString: str

        Return
        -------
        None

        Description
        -----------
        Initializes a hasciistring with a asciistring.

        Parameters
        ----------
        aString: TCollection_HAsciiString

        Return
        -------
        None

        Description
        -----------
        Initializes a hasciistring with a hasciistring.

        Parameters
        ----------
        aString: TCollection_HExtendedString
        replaceNonAscii: Standard_Character

        Return
        -------
        None

        Description
        -----------
        Initializes a hasciistring with a hextendedstring. if replacenonascii is non-null character, it will be used in place of any non-ascii character found in the source string. otherwise, creates utf-8 unicode string.

        """
        _TCollection.TCollection_HAsciiString_swiginit(self, _TCollection.new_TCollection_HAsciiString(*args))

    def AssignCat(self, *args):
        r"""

        Parameters
        ----------
        other: str

        Return
        -------
        None

        Description
        -----------
        Appends <other> to me.

        Parameters
        ----------
        other: TCollection_HAsciiString

        Return
        -------
        None

        Description
        -----------
        Appends <other> to me. example: astring = astring + anotherstring.

        """
        return _TCollection.TCollection_HAsciiString_AssignCat(self, *args)

    def Capitalize(self, *args):
        r"""
        Return
        -------
        None

        Description
        -----------
        Converts the first character into its corresponding upper-case character and the other characters into lowercase. example: before me = 'hello ' after me = 'hello '.

        """
        return _TCollection.TCollection_HAsciiString_Capitalize(self, *args)

    def Cat(self, *args):
        r"""

        Parameters
        ----------
        other: str

        Return
        -------
        opencascade::handle<TCollection_HAsciiString>

        Description
        -----------
        Creates a new string by concatenation of this ascii string and the other ascii string. example: astring = astring + anotherstring astring = astring + 'dummy' astring contains 'i say ' astring = astring + 'hello ' + 'dolly' gives 'i say hello dolly' warning: to catenate more than one cstring, you must put a string before. so the following example is wrong ! astring = 'hello ' + 'dolly' this is not allowed this rule is applicable to assigncat (operator +=) too.

        Parameters
        ----------
        other: TCollection_HAsciiString

        Return
        -------
        opencascade::handle<TCollection_HAsciiString>

        Description
        -----------
        Creates a new string by concatenation of this ascii string and the other ascii string. example: astring = astring + anotherstring.

        """
        return _TCollection.TCollection_HAsciiString_Cat(self, *args)

    def Center(self, *args):
        r"""

        Parameters
        ----------
        Width: int
        Filler: Standard_Character

        Return
        -------
        None

        Description
        -----------
        Modifies this ascii string so that its length becomes equal to width and the new characters are equal to filler. new characters are added both at the beginning and at the end of this string. if width is less than the length of this ascii string, nothing happens. example opencascade::handle<tcollection_hasciistring> myalphabet = new tcollection_hasciistring ('abcdef'); myalphabet->center(9,' '); assert ( !strcmp( myalphabet->tocstring(), ' abcdef ') );.

        """
        return _TCollection.TCollection_HAsciiString_Center(self, *args)

    def ChangeAll(self, *args):
        r"""

        Parameters
        ----------
        aChar: Standard_Character
        NewChar: Standard_Character
        CaseSensitive: bool (optional, default to Standard_True)

        Return
        -------
        None

        Description
        -----------
        Replaces all characters equal to achar by newchar in this ascii string. the substitution is case sensitive if casesensitive is true (default value). if you do not use the default case sensitive option, it does not matter whether achar is upper-case or not. example opencascade::handle<tcollection_hasciistring> mymistake = new tcollection_hasciistring ('hather'); mymistake->changeall('h','f'); assert ( !strcmp( mymistake->tocstring(), 'father') );.

        """
        return _TCollection.TCollection_HAsciiString_ChangeAll(self, *args)

    def Clear(self, *args):
        r"""
        Return
        -------
        None

        Description
        -----------
        Removes all characters contained in <self>. this produces an empty hasciistring.

        """
        return _TCollection.TCollection_HAsciiString_Clear(self, *args)

    def FirstLocationInSet(self, *args):
        r"""

        Parameters
        ----------
        Set: TCollection_HAsciiString
        FromIndex: int
        ToIndex: int

        Return
        -------
        int

        Description
        -----------
        Returns the index of the first character of <self> that is present in <set>. the search begins to the index fromindex and ends to the the index toindex. returns zero if failure. raises an exception if fromindex or toindex is out of range example: before me = 'aabacaa', s = 'aa', fromindex = 1, toindex = 7 after me = 'aabacaa' returns 1.

        """
        return _TCollection.TCollection_HAsciiString_FirstLocationInSet(self, *args)

    def FirstLocationNotInSet(self, *args):
        r"""

        Parameters
        ----------
        Set: TCollection_HAsciiString
        FromIndex: int
        ToIndex: int

        Return
        -------
        int

        Description
        -----------
        Returns the index of the first character of <self> that is not present in the set <set>. the search begins to the index fromindex and ends to the the index toindex in <self>. returns zero if failure. raises an exception if fromindex or toindex is out of range. example: before me = 'aabacaa', s = 'aa', fromindex = 1, toindex = 7 after me = 'aabacaa' returns 3.

        """
        return _TCollection.TCollection_HAsciiString_FirstLocationNotInSet(self, *args)

    def Insert(self, *args):
        r"""

        Parameters
        ----------
        where: int
        what: Standard_Character

        Return
        -------
        None

        Description
        -----------
        Insert a character at position <where>. example: astring contains 'hy not ?' astring.insert(1,'w'); gives 'why not ?' astring contains 'wh' astring.insert(3,'y'); gives 'why' astring contains 'way' astring.insert(2,'h'); gives 'why'.

        Parameters
        ----------
        where: int
        what: str

        Return
        -------
        None

        Description
        -----------
        Insert a hasciistring at position <where>.

        Parameters
        ----------
        where: int
        what: TCollection_HAsciiString

        Return
        -------
        None

        Description
        -----------
        Insert a hasciistring at position <where>.

        """
        return _TCollection.TCollection_HAsciiString_Insert(self, *args)

    def InsertAfter(self, *args):
        r"""

        Parameters
        ----------
        Index: int
        other: TCollection_HAsciiString

        Return
        -------
        None

        Description
        -----------
        Inserts the other ascii string a after a specific index in the string <self> example: before me = 'cde' , index = 0 , other = 'ab' after me = 'abcde' , other = 'ab'.

        """
        return _TCollection.TCollection_HAsciiString_InsertAfter(self, *args)

    def InsertBefore(self, *args):
        r"""

        Parameters
        ----------
        Index: int
        other: TCollection_HAsciiString

        Return
        -------
        None

        Description
        -----------
        Inserts the other ascii string a before a specific index in the string <self> raises an exception if index is out of bounds example: before me = 'cde' , index = 1 , other = 'ab' after me = 'abcde' , other = 'ab'.

        """
        return _TCollection.TCollection_HAsciiString_InsertBefore(self, *args)

    def IntegerValue(self, *args):
        r"""
        Return
        -------
        int

        Description
        -----------
        Converts a hasciistring containing a numeric expression to an integer. example: '215' returns 215.

        """
        return _TCollection.TCollection_HAsciiString_IntegerValue(self, *args)

    def IsAscii(self, *args):
        r"""
        Return
        -------
        bool

        Description
        -----------
        Returns true if the string contains only ascii characters between ' ' and '~'. this means no control character and no extended ascii code.

        """
        return _TCollection.TCollection_HAsciiString_IsAscii(self, *args)

    def IsDifferent(self, *args):
        r"""

        Parameters
        ----------
        S: TCollection_HAsciiString

        Return
        -------
        bool

        Description
        -----------
        Returns true if the string s not contains same characters than the string <self>.

        """
        return _TCollection.TCollection_HAsciiString_IsDifferent(self, *args)

    def IsEmpty(self, *args):
        r"""
        Return
        -------
        bool

        Description
        -----------
        Returns true if the string <self> contains zero character.

        """
        return _TCollection.TCollection_HAsciiString_IsEmpty(self, *args)

    def IsGreater(self, *args):
        r"""

        Parameters
        ----------
        other: TCollection_HAsciiString

        Return
        -------
        bool

        Description
        -----------
        Returns true if <self> is 'ascii' greater than <other>.

        """
        return _TCollection.TCollection_HAsciiString_IsGreater(self, *args)

    def IsIntegerValue(self, *args):
        r"""
        Return
        -------
        bool

        Description
        -----------
        Returns true if the string contains an integer value.

        """
        return _TCollection.TCollection_HAsciiString_IsIntegerValue(self, *args)

    def IsLess(self, *args):
        r"""

        Parameters
        ----------
        other: TCollection_HAsciiString

        Return
        -------
        bool

        Description
        -----------
        Returns true if <self> is 'ascii' less than <other>.

        """
        return _TCollection.TCollection_HAsciiString_IsLess(self, *args)

    def IsRealValue(self, *args):
        r"""
        Return
        -------
        bool

        Description
        -----------
        Returns true if the string contains a real value.

        """
        return _TCollection.TCollection_HAsciiString_IsRealValue(self, *args)

    def IsSameState(self, *args):
        r"""

        Parameters
        ----------
        other: TCollection_HAsciiString

        Return
        -------
        bool

        Description
        -----------
        No available documentation.

        """
        return _TCollection.TCollection_HAsciiString_IsSameState(self, *args)

    def IsSameString(self, *args):
        r"""

        Parameters
        ----------
        S: TCollection_HAsciiString

        Return
        -------
        bool

        Description
        -----------
        Returns true if the string s contains same characters than the string <self>.

        Parameters
        ----------
        S: TCollection_HAsciiString
        CaseSensitive: bool

        Return
        -------
        bool

        Description
        -----------
        Returns true if the string s contains same characters than the string <self>.

        """
        return _TCollection.TCollection_HAsciiString_IsSameString(self, *args)

    def LeftAdjust(self, *args):
        r"""
        Return
        -------
        None

        Description
        -----------
        Removes all space characters in the beginning of the string.

        """
        return _TCollection.TCollection_HAsciiString_LeftAdjust(self, *args)

    def LeftJustify(self, *args):
        r"""

        Parameters
        ----------
        Width: int
        Filler: Standard_Character

        Return
        -------
        None

        Description
        -----------
        Left justify. length becomes equal to width and the new characters are equal to filler if width < length nothing happens raises an exception if width is less than zero example: before me = 'abcdef' , width = 9 , filler = ' ' after me = 'abcdef '.

        """
        return _TCollection.TCollection_HAsciiString_LeftJustify(self, *args)

    def Length(self, *args):
        r"""
        Return
        -------
        int

        Description
        -----------
        Returns number of characters in <self>. this is the same functionality as 'strlen' in c.

        """
        return _TCollection.TCollection_HAsciiString_Length(self, *args)

    def Location(self, *args):
        r"""

        Parameters
        ----------
        other: TCollection_HAsciiString
        FromIndex: int
        ToIndex: int

        Return
        -------
        int

        Description
        -----------
        Returns an index in the string <self> of the first occurrence of the string s in the string <self> from the starting index fromindex to the ending index toindex returns zero if failure raises an exception if fromindex or toindex is out of range. example: before me = 'aabaaaa', s = 'aa', fromindex = 1, toindex = 7 after me = 'aabaaaa' returns 4.

        Parameters
        ----------
        N: int
        C: Standard_Character
        FromIndex: int
        ToIndex: int

        Return
        -------
        int

        Description
        -----------
        Returns the index of the nth occurrence of the character c in the string <self> from the starting index fromindex to the ending index toindex. returns zero if failure. raises an exception if fromindex or toindex is out of range example: before me = 'aabaa', n = 3, c = 'a', fromindex = 1, toindex = 5 after me = 'aabaa' returns 5.

        """
        return _TCollection.TCollection_HAsciiString_Location(self, *args)

    def LowerCase(self, *args):
        r"""
        Return
        -------
        None

        Description
        -----------
        Converts <self> to its lower-case equivalent.

        """
        return _TCollection.TCollection_HAsciiString_LowerCase(self, *args)

    def Prepend(self, *args):
        r"""

        Parameters
        ----------
        other: TCollection_HAsciiString

        Return
        -------
        None

        Description
        -----------
        Inserts the other string at the beginning of the string <self> example: before me = 'cde' , s = 'ab' after me = 'abcde' , s = 'ab'.

        """
        return _TCollection.TCollection_HAsciiString_Prepend(self, *args)

    def PrintToString(self):
        r"""PrintToString(TCollection_HAsciiString self) -> std::string"""
        return _TCollection.TCollection_HAsciiString_PrintToString(self)

    def RealValue(self, *args):
        r"""
        Return
        -------
        float

        Description
        -----------
        Converts a string containing a numeric expression to a real. example: '215' returns 215.0. '3.14159267' returns 3.14159267.

        """
        return _TCollection.TCollection_HAsciiString_RealValue(self, *args)

    def Remove(self, *args):
        r"""

        Parameters
        ----------
        where: int
        ahowmany: int (optional, default to 1)

        Return
        -------
        None

        Description
        -----------
        Erases <ahowmany> characters from position <where>, <where> included. example: astring contains 'hello' astring.erase(2,2) erases 2 characters from position 1 this gives 'hlo'.

        """
        return _TCollection.TCollection_HAsciiString_Remove(self, *args)

    def RemoveAll(self, *args):
        r"""

        Parameters
        ----------
        C: Standard_Character
        CaseSensitive: bool

        Return
        -------
        None

        Description
        -----------
        Remove all the occurrences of the character c in the string example: before me = 'hellllo', c = 'l' , casesensitive = true after me = 'hello'.

        Parameters
        ----------
        what: Standard_Character

        Return
        -------
        None

        Description
        -----------
        Removes every <what> characters from <self>.

        """
        return _TCollection.TCollection_HAsciiString_RemoveAll(self, *args)

    def RightAdjust(self, *args):
        r"""
        Return
        -------
        None

        Description
        -----------
        Removes all space characters at the end of the string.

        """
        return _TCollection.TCollection_HAsciiString_RightAdjust(self, *args)

    def RightJustify(self, *args):
        r"""

        Parameters
        ----------
        Width: int
        Filler: Standard_Character

        Return
        -------
        None

        Description
        -----------
        Right justify. length becomes equal to width and the new characters are equal to filler if width < length nothing happens raises an exception if width is less than zero example: before me = 'abcdef' , width = 9 , filler = ' ' after me = ' abcdef'.

        """
        return _TCollection.TCollection_HAsciiString_RightJustify(self, *args)

    def Search(self, *args):
        r"""

        Parameters
        ----------
        what: str

        Return
        -------
        int

        Description
        -----------
        Searches a cstring in <self> from the beginning and returns position of first item <what> matching. it returns -1 if not found. example: astring contains 'sample single test' astring.search('le') returns 5.

        Parameters
        ----------
        what: TCollection_HAsciiString

        Return
        -------
        int

        Description
        -----------
        Searches a string in <self> from the beginning and returns position of first item <what> matching. it returns -1 if not found.

        """
        return _TCollection.TCollection_HAsciiString_Search(self, *args)

    def SearchFromEnd(self, *args):
        r"""

        Parameters
        ----------
        what: str

        Return
        -------
        int

        Description
        -----------
        Searches a cstring in a string from the end and returns position of first item <what> matching. it returns -1 if not found. example: astring contains 'sample single test' astring.searchfromend('le') returns 12.

        Parameters
        ----------
        what: TCollection_HAsciiString

        Return
        -------
        int

        Description
        -----------
        Searches a hasciistring in another hasciistring from the end and returns position of first item <what> matching. it returns -1 if not found.

        """
        return _TCollection.TCollection_HAsciiString_SearchFromEnd(self, *args)

    def SetValue(self, *args):
        r"""

        Parameters
        ----------
        where: int
        what: Standard_Character

        Return
        -------
        None

        Description
        -----------
        Replaces one character in the string at position <where>. if <where> is less than zero or greater than the length of <self> an exception is raised. example: astring contains 'garbake' astring.replace(6,'g') gives <self> = 'garbage'.

        Parameters
        ----------
        where: int
        what: str

        Return
        -------
        None

        Description
        -----------
        Replaces a part of <self> in the string at position <where>. if <where> is less than zero or greater than the length of <self> an exception is raised. example: astring contains 'garbake' astring.replace(6,'g') gives <self> = 'garbage'.

        Parameters
        ----------
        where: int
        what: TCollection_HAsciiString

        Return
        -------
        None

        Description
        -----------
        Replaces a part of <self> by another string.

        """
        return _TCollection.TCollection_HAsciiString_SetValue(self, *args)

    def Split(self, *args):
        r"""

        Parameters
        ----------
        where: int

        Return
        -------
        opencascade::handle<TCollection_HAsciiString>

        Description
        -----------
        Splits a hasciistring into two sub-strings. example: astring contains 'abcdefg' astring.split(3) gives <self> = 'abc' and returns 'defg'.

        """
        return _TCollection.TCollection_HAsciiString_Split(self, *args)

    def String(self, *args):
        r"""
        Return
        -------
        TCollection_AsciiString

        Description
        -----------
        Returns the field mystring.

        """
        return _TCollection.TCollection_HAsciiString_String(self, *args)

    def SubString(self, *args):
        r"""

        Parameters
        ----------
        FromIndex: int
        ToIndex: int

        Return
        -------
        opencascade::handle<TCollection_HAsciiString>

        Description
        -----------
        Creation of a sub-string of the string <self>. the sub-string starts to the index fromindex and ends to the index toindex. raises an exception if toindex or fromindex is out of bounds example: before me = 'abcdefg', toindex=3, fromindex=6 after me = 'abcdefg' returns 'cdef'.

        """
        return _TCollection.TCollection_HAsciiString_SubString(self, *args)

    def ToCString(self, *args):
        r"""
        Return
        -------
        str

        Description
        -----------
        Returns pointer to string (char *) this is useful for some casual manipulations because this 'char *' is 'const', you can't modify its contents.

        """
        return _TCollection.TCollection_HAsciiString_ToCString(self, *args)

    def Token(self, *args):
        r"""

        Parameters
        ----------
        separators: str (optional, default to '	')
        whichone: int (optional, default to 1)

        Return
        -------
        opencascade::handle<TCollection_HAsciiString>

        Description
        -----------
        Extracts <whichone> token from <self>. by default, the <separators> is set to space and tabulation. by default, the token extracted is the first one (whichone = 1). <separators> contains all separators you need. if no token indexed by <whichone> is found, it returns an empty string. example: astring contains 'this is a message' astring.token() returns 'this' astring.token(' ',4) returns 'message' astring.token(' ',2) returns 'is' astring.token(' ',9) returns '' other separators than space character and tabulation are allowed astring contains '1234; test:message , value' astring.token('; :,',4) returns 'value' astring.token('; :,',2) returns 'test'.

        """
        return _TCollection.TCollection_HAsciiString_Token(self, *args)

    def Trunc(self, *args):
        r"""

        Parameters
        ----------
        ahowmany: int

        Return
        -------
        None

        Description
        -----------
        Truncates <self> to <ahowmany> characters. example: me = 'hello dolly' -> trunc(3) -> me = 'hel'.

        """
        return _TCollection.TCollection_HAsciiString_Trunc(self, *args)

    def UpperCase(self, *args):
        r"""
        Return
        -------
        None

        Description
        -----------
        Converts <self> to its upper-case equivalent.

        """
        return _TCollection.TCollection_HAsciiString_UpperCase(self, *args)

    def UsefullLength(self, *args):
        r"""
        Return
        -------
        int

        Description
        -----------
        Length of the string ignoring all spaces (' ') and the control character at the end.

        """
        return _TCollection.TCollection_HAsciiString_UsefullLength(self, *args)

    def Value(self, *args):
        r"""

        Parameters
        ----------
        where: int

        Return
        -------
        Standard_Character

        Description
        -----------
        Returns character at position <where> in <self>. if <where> is less than zero or greater than the length of <self>, an exception is raised. example: astring contains 'hello' astring.value(2) returns 'e'.

        """
        return _TCollection.TCollection_HAsciiString_Value(self, *args)


    @staticmethod
    def DownCast(t):
      return Handle_TCollection_HAsciiString_DownCast(t)


    __repr__ = _dumps_object

    __swig_destroy__ = _TCollection.delete_TCollection_HAsciiString

# Register TCollection_HAsciiString in _TCollection:
_TCollection.TCollection_HAsciiString_swigregister(TCollection_HAsciiString)
class TCollection_HExtendedString(OCC.Core.Standard.Standard_Transient):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr

    def __init__(self, *args):
        r"""
        Return
        -------
        None

        Description
        -----------
        Initializes a hextendedstring to an empty extendedstring.

        Parameters
        ----------
        message: str

        Return
        -------
        None

        Description
        -----------
        Initializes a hextendedstring with a cstring.

        Parameters
        ----------
        message: Standard_ExtString

        Return
        -------
        None

        Description
        -----------
        Initializes a hextendedstring with an extstring.

        Parameters
        ----------
        aChar: Standard_ExtCharacter

        Return
        -------
        None

        Description
        -----------
        Initializes a hextendedstring with a single character.

        Parameters
        ----------
        length: int
        filler: Standard_ExtCharacter

        Return
        -------
        None

        Description
        -----------
        Initializes a hextendedstring with <length> space allocated. and filled with <filler>. this is useful for buffers.

        Parameters
        ----------
        aString: str

        Return
        -------
        None

        Description
        -----------
        Initializes a hextendedstring with a hextendedstring.

        Parameters
        ----------
        aString: TCollection_HAsciiString

        Return
        -------
        None

        Description
        -----------
        Initializes a hextendedstring with an hasciistring.

        Parameters
        ----------
        aString: TCollection_HExtendedString

        Return
        -------
        None

        Description
        -----------
        Initializes a hextendedstring with a hextendedstring.

        """
        _TCollection.TCollection_HExtendedString_swiginit(self, _TCollection.new_TCollection_HExtendedString(*args))

    def AssignCat(self, *args):
        r"""

        Parameters
        ----------
        other: TCollection_HExtendedString

        Return
        -------
        None

        Description
        -----------
        Appends <other> to me.

        """
        return _TCollection.TCollection_HExtendedString_AssignCat(self, *args)

    def Cat(self, *args):
        r"""

        Parameters
        ----------
        other: TCollection_HExtendedString

        Return
        -------
        opencascade::handle<TCollection_HExtendedString>

        Description
        -----------
        Returns a string appending <other> to me.

        """
        return _TCollection.TCollection_HExtendedString_Cat(self, *args)

    def ChangeAll(self, *args):
        r"""

        Parameters
        ----------
        aChar: Standard_ExtCharacter
        NewChar: Standard_ExtCharacter

        Return
        -------
        None

        Description
        -----------
        Substitutes all the characters equal to achar by newchar in the string <self>.

        """
        return _TCollection.TCollection_HExtendedString_ChangeAll(self, *args)

    def Clear(self, *args):
        r"""
        Return
        -------
        None

        Description
        -----------
        Removes all characters contained in <self>. this produces an empty extendedstring.

        """
        return _TCollection.TCollection_HExtendedString_Clear(self, *args)

    def Insert(self, *args):
        r"""

        Parameters
        ----------
        where: int
        what: Standard_ExtCharacter

        Return
        -------
        None

        Description
        -----------
        Insert a extcharacter at position <where>. example: astring contains 'hy not ?' astring.insert(1,'w'); gives 'why not ?' astring contains 'wh' astring.insert(3,'y'); gives 'why' astring contains 'way' astring.insert(2,'h'); gives 'why'.

        Parameters
        ----------
        where: int
        what: TCollection_HExtendedString

        Return
        -------
        None

        Description
        -----------
        Insert a hextendedstring at position <where>.

        """
        return _TCollection.TCollection_HExtendedString_Insert(self, *args)

    def IsAscii(self, *args):
        r"""
        Return
        -------
        bool

        Description
        -----------
        Returns true if the string contains only 'ascii range' characters.

        """
        return _TCollection.TCollection_HExtendedString_IsAscii(self, *args)

    def IsEmpty(self, *args):
        r"""
        Return
        -------
        bool

        Description
        -----------
        Returns true if the string <self> contains zero character.

        """
        return _TCollection.TCollection_HExtendedString_IsEmpty(self, *args)

    def IsGreater(self, *args):
        r"""

        Parameters
        ----------
        other: TCollection_HExtendedString

        Return
        -------
        bool

        Description
        -----------
        Returns true if <self> is greater than <other>.

        """
        return _TCollection.TCollection_HExtendedString_IsGreater(self, *args)

    def IsLess(self, *args):
        r"""

        Parameters
        ----------
        other: TCollection_HExtendedString

        Return
        -------
        bool

        Description
        -----------
        Returns true if <self> is less than <other>.

        """
        return _TCollection.TCollection_HExtendedString_IsLess(self, *args)

    def IsSameState(self, *args):
        r"""

        Parameters
        ----------
        other: TCollection_HExtendedString

        Return
        -------
        bool

        Description
        -----------
        No available documentation.

        """
        return _TCollection.TCollection_HExtendedString_IsSameState(self, *args)

    def Length(self, *args):
        r"""
        Return
        -------
        int

        Description
        -----------
        Returns number of characters in <self>. this is the same functionality as 'strlen' in c.

        """
        return _TCollection.TCollection_HExtendedString_Length(self, *args)

    def PrintToString(self):
        r"""PrintToString(TCollection_HExtendedString self) -> std::string"""
        return _TCollection.TCollection_HExtendedString_PrintToString(self)

    def Remove(self, *args):
        r"""

        Parameters
        ----------
        where: int
        ahowmany: int (optional, default to 1)

        Return
        -------
        None

        Description
        -----------
        Erases <ahowmany> characters from position <where>, <where> included. example: astring contains 'hello' astring.erase(2,2) erases 2 characters from position 1 this gives 'hlo'.

        """
        return _TCollection.TCollection_HExtendedString_Remove(self, *args)

    def RemoveAll(self, *args):
        r"""

        Parameters
        ----------
        what: Standard_ExtCharacter

        Return
        -------
        None

        Description
        -----------
        Removes every <what> characters from <self>.

        """
        return _TCollection.TCollection_HExtendedString_RemoveAll(self, *args)

    def Search(self, *args):
        r"""

        Parameters
        ----------
        what: TCollection_HExtendedString

        Return
        -------
        int

        Description
        -----------
        Searches a string in <self> from the beginning and returns position of first item <what> matching. it returns -1 if not found.

        """
        return _TCollection.TCollection_HExtendedString_Search(self, *args)

    def SearchFromEnd(self, *args):
        r"""

        Parameters
        ----------
        what: TCollection_HExtendedString

        Return
        -------
        int

        Description
        -----------
        Searches a extendedstring in another extendedstring from the end and returns position of first item <what> matching. it returns -1 if not found.

        """
        return _TCollection.TCollection_HExtendedString_SearchFromEnd(self, *args)

    def SetValue(self, *args):
        r"""

        Parameters
        ----------
        where: int
        what: Standard_ExtCharacter

        Return
        -------
        None

        Description
        -----------
        Replaces one character in the string at position <where>. if <where> is less than zero or greater than the length of <self> an exception is raised. example: astring contains 'garbake' astring.replace(6,'g') gives <self> = 'garbage'.

        Parameters
        ----------
        where: int
        what: TCollection_HExtendedString

        Return
        -------
        None

        Description
        -----------
        Replaces a part of <self> by another string.

        """
        return _TCollection.TCollection_HExtendedString_SetValue(self, *args)

    def Split(self, *args):
        r"""

        Parameters
        ----------
        where: int

        Return
        -------
        opencascade::handle<TCollection_HExtendedString>

        Description
        -----------
        Splits a extendedstring into two sub-strings. example: astring contains 'abcdefg' astring.split(3) gives <self> = 'abc' and returns 'defg'.

        """
        return _TCollection.TCollection_HExtendedString_Split(self, *args)

    def String(self, *args):
        r"""
        Return
        -------
        TCollection_ExtendedString

        Description
        -----------
        Returns the field mystring.

        """
        return _TCollection.TCollection_HExtendedString_String(self, *args)

    def ToExtString(self, *args):
        r"""
        Return
        -------
        Standard_ExtString

        Description
        -----------
        Returns pointer to extstring.

        """
        return _TCollection.TCollection_HExtendedString_ToExtString(self, *args)

    def Token(self, *args):
        r"""

        Parameters
        ----------
        separators: Standard_ExtString
        whichone: int (optional, default to 1)

        Return
        -------
        opencascade::handle<TCollection_HExtendedString>

        Description
        -----------
        Extracts <whichone> token from <self>. by default, the <separators> is set to space and tabulation. by default, the token extracted is the first one (whichone = 1). <separators> contains all separators you need. if no token indexed by <whichone> is found, it returns an empty string. example: astring contains 'this is a message' astring.token() returns 'this' astring.token(' ',4) returns 'message' astring.token(' ',2) returns 'is' astring.token(' ',9) returns '' other separators than space character and tabulation are allowed astring contains '1234; test:message , value' astring.token('; :,',4) returns 'value' astring.token('; :,',2) returns 'test'.

        """
        return _TCollection.TCollection_HExtendedString_Token(self, *args)

    def Trunc(self, *args):
        r"""

        Parameters
        ----------
        ahowmany: int

        Return
        -------
        None

        Description
        -----------
        Truncates <self> to <ahowmany> characters. example: me = 'hello dolly' -> trunc(3) -> me = 'hel'.

        """
        return _TCollection.TCollection_HExtendedString_Trunc(self, *args)

    def Value(self, *args):
        r"""

        Parameters
        ----------
        where: int

        Return
        -------
        Standard_ExtCharacter

        Description
        -----------
        Returns extcharacter at position <where> in <self>. if <where> is less than zero or greater than the length of <self>, an exception is raised. example: astring contains 'hello' astring.value(2) returns 'e'.

        """
        return _TCollection.TCollection_HExtendedString_Value(self, *args)


    @staticmethod
    def DownCast(t):
      return Handle_TCollection_HExtendedString_DownCast(t)


    __repr__ = _dumps_object

    __swig_destroy__ = _TCollection.delete_TCollection_HExtendedString

# Register TCollection_HExtendedString in _TCollection:
_TCollection.TCollection_HExtendedString_swigregister(TCollection_HExtendedString)



@deprecated
def tcollection_NextPrimeForMap(*args):
	return tcollection.NextPrimeForMap(*args)

@deprecated
def TCollection_AsciiString_HashCode(*args):
	return TCollection_AsciiString.HashCode(*args)

@deprecated
def TCollection_AsciiString_IsEqual(*args):
	return TCollection_AsciiString.IsEqual(*args)

@deprecated
def TCollection_AsciiString_IsEqual(*args):
	return TCollection_AsciiString.IsEqual(*args)

@deprecated
def TCollection_AsciiString_IsSameString(*args):
	return TCollection_AsciiString.IsSameString(*args)

@deprecated
def TCollection_ExtendedString_HashCode(*args):
	return TCollection_ExtendedString.HashCode(*args)

@deprecated
def TCollection_ExtendedString_IsEqual(*args):
	return TCollection_ExtendedString.IsEqual(*args)



