TEST(StringTest, Ensure16Bit) { String string8("8bit"); EXPECT_TRUE(string8.is8Bit()); string8.ensure16Bit(); EXPECT_FALSE(string8.is8Bit()); EXPECT_EQ("8bit", string8); String string16(reinterpret_cast<const UChar*>(u"16bit")); EXPECT_FALSE(string16.is8Bit()); string16.ensure16Bit(); EXPECT_FALSE(string16.is8Bit()); EXPECT_EQ("16bit", string16); String empty8(StringImpl::empty()); EXPECT_TRUE(empty8.is8Bit()); empty8.ensure16Bit(); EXPECT_FALSE(empty8.is8Bit()); EXPECT_TRUE(empty8.isEmpty()); EXPECT_FALSE(empty8.isNull()); String empty16(StringImpl::empty16Bit()); EXPECT_FALSE(empty16.is8Bit()); empty16.ensure16Bit(); EXPECT_FALSE(empty16.is8Bit()); EXPECT_TRUE(empty16.isEmpty()); EXPECT_FALSE(empty16.isNull()); String nullString; nullString.ensure16Bit(); EXPECT_TRUE(nullString.isNull()); }
/* * vm_peek pops the top value off the value stack, and then pushes it * back. The value is returned from this function. */ uint16_t vm_peek(machine vm) { uint16_t val; if (NULL == vm) return 0; if (NULL == vm->vals) return 0; if (empty16(vm->vals)) return 0; val = pop16(vm->vals); push16(vm->vals, val); return val; }