NOTE:
These are a little sketchy...I'll fill in details 'soon'.
long String::operator^(const char find_me) const
{
return (string == nullptr) ? ((find_me == EOS) ? 0 : -1)
: ::find(string,find_me); // call strextra
// function
}
long String::operator^(const char find_me[]) const
{
return (string == nullptr)
? ((find_me == nullptr || find_me[0] == EOS) ? 0 : -1)
: ((find_me == nullptr) ? 0
: ::find(string,find_me));
}
long String::operator^(const String & find_me) const
{
return (string == nullptr)
? ((find_me.string == nullptr) ? 0 : -1)
: ((find_me.string == nullptr) ? 0
: ::find(string,find_me.string));
}
long String::find(const String & find_me, long start_looking) const
{
return (string == nullptr)
? ((find_me.string == nullptr) ? 0 : -1)
: ((find_me.string == nullptr) ? 0
: ::find(string,
find_me.string,
start_looking));
}
long String::find(const char find_me[], long start_looking) const
{
return (string == nullptr)
? ((find_me == nullptr || find_me[0] == EOS) ? 0 : -1)
: ((find_me == nullptr) ? 0
: ::find(string, find_me,
start_looking));
}
long String::find(const char find_me, long start_looking) const
{
return (string == nullptr)
? ((find_me == EOS) ? 0 : -1)
: ::find(string, find_me, start_looking);
}