Skip to content

intl ICU C++ code modernisation, making it closer to C++11 #8650

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 1 commit into from
Jun 20, 2022
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
44 changes: 22 additions & 22 deletions ext/intl/breakiterator/codepointiterator_internal.h
Original file line number Diff line number Diff line change
Expand Up @@ -35,51 +35,51 @@ namespace PHP {

CodePointBreakIterator& operator=(const CodePointBreakIterator& that);

virtual ~CodePointBreakIterator();
~CodePointBreakIterator() override;

#if U_ICU_VERSION_MAJOR_NUM >= 70
virtual bool operator==(const BreakIterator& that) const;
bool operator==(const BreakIterator& that) const override;
#else
virtual UBool operator==(const BreakIterator& that) const;
UBool operator==(const BreakIterator& that) const override;
#endif

virtual CodePointBreakIterator* clone(void) const;
CodePointBreakIterator* clone(void) const override;

virtual UClassID getDynamicClassID(void) const;
UClassID getDynamicClassID(void) const override;

virtual CharacterIterator& getText(void) const;
CharacterIterator& getText(void) const override;

virtual UText *getUText(UText *fillIn, UErrorCode &status) const;
UText *getUText(UText *fillIn, UErrorCode &status) const override;

virtual void setText(const UnicodeString &text);
void setText(const UnicodeString &text) override;

virtual void setText(UText *text, UErrorCode &status);
void setText(UText *text, UErrorCode &status) override;

virtual void adoptText(CharacterIterator* it);
void adoptText(CharacterIterator* it) override;

virtual int32_t first(void);
int32_t first(void) override;

virtual int32_t last(void);
int32_t last(void) override;

virtual int32_t previous(void);
int32_t previous(void) override;

virtual int32_t next(void);
int32_t next(void) override;

virtual int32_t current(void) const;
int32_t current(void) const override;

virtual int32_t following(int32_t offset);
int32_t following(int32_t offset) override;

virtual int32_t preceding(int32_t offset);
int32_t preceding(int32_t offset) override;

virtual UBool isBoundary(int32_t offset);
UBool isBoundary(int32_t offset) override;

virtual int32_t next(int32_t n);
int32_t next(int32_t n) override;

virtual CodePointBreakIterator *createBufferClone(void *stackBuffer,
CodePointBreakIterator *createBufferClone(void *stackBuffer,
int32_t &BufferSize,
UErrorCode &status);
UErrorCode &status) override;

virtual CodePointBreakIterator &refreshInputText(UText *input, UErrorCode &status);
CodePointBreakIterator &refreshInputText(UText *input, UErrorCode &status) override;

inline UChar32 getLastCodePoint()
{
Expand Down
7 changes: 3 additions & 4 deletions ext/intl/breakiterator/rulebasedbreakiterator_methods.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -13,6 +13,7 @@
*/

#include <unicode/rbbi.h>
#include <memory>

extern "C" {
#define USE_BREAKITERATOR_POINTER 1
Expand Down Expand Up @@ -163,11 +164,10 @@ U_CFUNC PHP_METHOD(IntlRuleBasedBreakIterator, getRuleStatusVec)
ZEND_ASSERT(BREAKITER_ERROR_CODE(bio) == U_BUFFER_OVERFLOW_ERROR);
BREAKITER_ERROR_CODE(bio) = U_ZERO_ERROR;

int32_t *rules = new int32_t[num_rules];
num_rules = fetch_rbbi(bio)->getRuleStatusVec(rules, num_rules,
std::unique_ptr<int32_t[]> rules = std::unique_ptr<int32_t[]>(new int32_t[num_rules]);
num_rules = fetch_rbbi(bio)->getRuleStatusVec(rules.get(), num_rules,
BREAKITER_ERROR_CODE(bio));
if (U_FAILURE(BREAKITER_ERROR_CODE(bio))) {
delete[] rules;
intl_errors_set(BREAKITER_ERROR_P(bio), BREAKITER_ERROR_CODE(bio),
"rbbi_get_rule_status_vec: failed obtaining the status values",
0);
Expand All @@ -178,7 +178,6 @@ U_CFUNC PHP_METHOD(IntlRuleBasedBreakIterator, getRuleStatusVec)
for (int32_t i = 0; i < num_rules; i++) {
add_next_index_long(return_value, rules[i]);
}
delete[] rules;
}

U_CFUNC PHP_METHOD(IntlRuleBasedBreakIterator, getBinaryRules)
Expand Down
10 changes: 5 additions & 5 deletions ext/intl/calendar/calendar_methods.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -115,11 +115,11 @@ class BugStringCharEnumeration : public StringEnumeration
uenum_close(uenum);
}

int32_t count(UErrorCode& status) const {
int32_t count(UErrorCode& status) const override {
return uenum_count(uenum, &status);
}

virtual const UnicodeString* snext(UErrorCode& status)
const UnicodeString* snext(UErrorCode& status) override
{
int32_t length;
const UChar* str = uenum_unext(uenum, &length, &status);
Expand All @@ -129,7 +129,7 @@ class BugStringCharEnumeration : public StringEnumeration
return &unistr.setTo(str, length);
}

virtual const char* next(int32_t *resultLength, UErrorCode &status)
const char* next(int32_t *resultLength, UErrorCode &status) override
{
int32_t length = -1;
const char* str = uenum_next(uenum, &length, &status);
Expand All @@ -144,12 +144,12 @@ class BugStringCharEnumeration : public StringEnumeration
return str;
}

void reset(UErrorCode& status)
void reset(UErrorCode& status) override
{
uenum_reset(uenum, &status);
}

virtual UClassID getDynamicClassID() const;
UClassID getDynamicClassID() const override;

static UClassID U_EXPORT2 getStaticClassID();

Expand Down