示例#1
0
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());
}
示例#2
0
文件: vm.c 项目: kisom/kam
/*
 * 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;
}