+metaStateSpecifier
+metaStateSpecifier_createElipsis (/*@observer@*/ metaStateInfo msinfo)
+{
+ metaStateSpecifier res = (metaStateSpecifier) dmalloc (sizeof (*res));
+ res->sr = sRef_undefined;
+ res->msinfo = msinfo;
+ res->elipsis = TRUE;
+ return res;
+}
+
+bool
+metaStateSpecifier_isElipsis (metaStateSpecifier m)
+{
+ return m->elipsis;
+}
+
+sRef
+metaStateSpecifier_getSref (metaStateSpecifier m)
+{
+ llassert (!metaStateSpecifier_isElipsis (m));
+ return m->sr;
+}
+
+metaStateInfo
+metaStateSpecifier_getMetaStateInfo (metaStateSpecifier m)
+{
+ return m->msinfo;
+}
+
+metaStateSpecifier
+metaStateSpecifier_copy (metaStateSpecifier m)
+{
+ if (metaStateSpecifier_isElipsis (m))
+ {
+ return metaStateSpecifier_createElipsis (m->msinfo);
+ }
+ else
+ {
+ return metaStateSpecifier_create (sRef_saveCopy (m->sr), m->msinfo);
+ }
+}
+