]> www.ginac.de Git - ginac.git/blobdiff - ginac/symbol.cpp
symbol: remove return_type_tinfo() and return_type() (shrink symbol by 8 bytes)
[ginac.git] / ginac / symbol.cpp
index f233d84e791322f7d618348c45f211b4d6ce1c11..d48ac997b1df8a29948777b1511ed35c56b467bd 100644 (file)
@@ -45,7 +45,7 @@ GINAC_IMPLEMENT_REGISTERED_CLASS_OPT(symbol, basic,
 // symbol
 
 symbol::symbol()
- : inherited(&symbol::tinfo_static), serial(next_serial++), name(autoname_prefix() + ToString(serial)), TeX_name(name), domain(domain::complex), ret_type(return_types::commutative), ret_type_tinfo(&symbol::tinfo_static)
+ :  serial(next_serial++), name(autoname_prefix() + ToString(serial)), TeX_name(name), domain(domain::complex)
 {
        setflag(status_flags::evaluated | status_flags::expanded);
 }
@@ -72,26 +72,15 @@ possymbol::possymbol()
 
 // symbol
 
-symbol::symbol(const std::string & initname, unsigned domain)
- : inherited(&symbol::tinfo_static), serial(next_serial++), name(initname), TeX_name(default_TeX_name()), domain(domain), ret_type(return_types::commutative), ret_type_tinfo(&symbol::tinfo_static)
+symbol::symbol(const std::string & initname, unsigned domain) :
+       serial(next_serial++), name(initname), TeX_name(default_TeX_name()),
+       domain(domain)
 {
        setflag(status_flags::evaluated | status_flags::expanded);
 }
 
-symbol::symbol(const std::string & initname, unsigned rt, tinfo_t rtt, unsigned domain)
- : inherited(&symbol::tinfo_static), serial(next_serial++), name(initname), TeX_name(default_TeX_name()), domain(domain), ret_type(rt), ret_type_tinfo(rtt)
-{
-       setflag(status_flags::evaluated | status_flags::expanded);
-}
-
-symbol::symbol(const std::string & initname, const std::string & texname, unsigned domain)
- : inherited(&symbol::tinfo_static), serial(next_serial++), name(initname), TeX_name(texname), domain(domain), ret_type(return_types::commutative), ret_type_tinfo(&symbol::tinfo_static)
-{
-       setflag(status_flags::evaluated | status_flags::expanded);
-}
-
-symbol::symbol(const std::string & initname, const std::string & texname, unsigned rt, tinfo_t rtt, unsigned domain)
- : inherited(&symbol::tinfo_static),  serial(next_serial++), name(initname), TeX_name(texname), domain(domain), ret_type(rt), ret_type_tinfo(rtt)
+symbol::symbol(const std::string & initname, const std::string & texname, unsigned domain) :
+       serial(next_serial++), name(initname), TeX_name(texname), domain(domain)
 {
        setflag(status_flags::evaluated | status_flags::expanded);
 }
@@ -104,12 +93,6 @@ realsymbol::realsymbol(const std::string & initname, unsigned domain)
 realsymbol::realsymbol(const std::string & initname, const std::string & texname, unsigned domain)
  : symbol(initname, texname, domain) { }
 
-realsymbol::realsymbol(const std::string & initname, unsigned rt, tinfo_t rtt, unsigned domain)
- : symbol(initname, rt, rtt, domain) { }
-
-realsymbol::realsymbol(const std::string & initname, const std::string & texname, unsigned rt, tinfo_t rtt, unsigned domain)
- : symbol(initname, texname, rt, rtt, domain) { }
-
 // possymbol
        
 possymbol::possymbol(const std::string & initname, unsigned domain)
@@ -118,12 +101,6 @@ possymbol::possymbol(const std::string & initname, unsigned domain)
 possymbol::possymbol(const std::string & initname, const std::string & texname, unsigned domain)
  : symbol(initname, texname, domain) { }
 
-possymbol::possymbol(const std::string & initname, unsigned rt, tinfo_t rtt, unsigned domain)
- : symbol(initname, rt, rtt, domain) { }
-
-possymbol::possymbol(const std::string & initname, const std::string & texname, unsigned rt, tinfo_t rtt, unsigned domain)
- : symbol(initname, texname, rt, rtt, domain) { }
-
 //////////
 // archiving
 //////////
@@ -138,8 +115,6 @@ symbol::symbol(const archive_node &n, lst &sym_lst)
                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;
        setflag(status_flags::evaluated | status_flags::expanded);
 }
 
@@ -168,8 +143,6 @@ void symbol::archive(archive_node &n) const
                n.add_string("TeX_name", TeX_name);
        if (domain != domain::complex)
                n.add_unsigned("domain", domain);
-       if (ret_type != return_types::commutative)
-               n.add_unsigned("return_type", ret_type);
 }
 
 //////////