+/** Construct object from archive_node. */
+symbol::symbol(const archive_node &n, lst &sym_lst)
+ : inherited(n, sym_lst), asexinfop(new assigned_ex_info), serial(next_serial++)
+{
+ if (!n.find_string("name", name))
+ name = autoname_prefix() + ToString(serial);
+ if (!n.find_string("TeXname", TeX_name))
+ TeX_name = default_TeX_name();
+ if (!n.find_unsigned("domain", domain))
+ domain = domain::complex;
+ if (!n.find_unsigned("return_type", ret_type))
+ ret_type = return_types::commutative;
+ if (!n.find_unsigned("return_type_tinfo", ret_type_tinfo))
+ ret_type_tinfo = TINFO_symbol;
+ setflag(status_flags::evaluated | status_flags::expanded);
+}