darin%meer.net ed54e4945c vtable_hide
git-svn-id: svn://10.0.0.236/trunk@149976 18797224-902f-48f8-a5cc-f745e15eee43
2003-12-03 07:50:05 +00:00

63 lines
1.4 KiB
C++

#include <stdio.h>
#include "nsStrRef.h"
void func(const char *p)
{
printf("--%s--\n", p);
}
void concat_and_print(const nsStrRef &a, const nsStrRef &b)
{
nsStrRef r(a + b);
printf("%s\n", r.get());
}
int main()
{
nsStrRef a("howdy");
NS_STR_NAMED_LITERAL(b, "howdy");
printf("%s %s %d\n", a.get(), b.get(), a.Equals(b));
nsStrRef d;
d.Assign('x');
printf("%s\n", d.get());
nsStrRef r(Substring(a, 1, 3));
printf("%s\n", r.get());
nsStrDependentRef c("foopity");
r = a + nsStrRef("/balance/") + b + c + nsStrDependentRef("bob");
printf("%s\n", r.get());
func(nsStrRef("xyz").get());
nsStrDependentRef aa("foo"), bb("bar");
concat_and_print(aa, bb);
nsStrAutoBuf a_buf;
a_buf = Substring(aa, 1, 2) + r;
printf("1:%s\n", a_buf.get());
a_buf = NS_STR_LITERAL("$w$") + a_buf + NS_STR_LITERAL("$you$");
printf("2:%s\n", a_buf.get());
a_buf.Append(NS_STR_LITERAL("--") + r + NS_STR_LITERAL("--") + r);
printf("3:%s\n", a_buf.get());
a_buf.Insert(10, "((xyz))");
printf("4:%s\n", a_buf.get());
/*
nsStrRef &a_ref = a_buf;
a_ref.Assign(NS_STR_LITERAL("one day on the road"));
*/
a_buf += aa + NS_STR_LITERAL("[[ ") + a_buf + NS_STR_LITERAL(" ]]") + c;
printf("5:%s\n", a_buf.get());
a_buf.Replace(0, 5, a);
printf("6:%s\n", a_buf.get());
return 0;
}