From: fred Date: Thu, 31 Oct 1996 14:58:41 +0000 (+0000) Subject: lilypond-0.0.9 X-Git-Tag: release/1.5.59~6998 X-Git-Url: https://git.donarmstrong.com/?a=commitdiff_plain;h=ae2d99879da0832b233771f15fb0dd5a137113af;p=lilypond.git lilypond-0.0.9 --- diff --git a/hdr/symbol.hh b/hdr/symbol.hh new file mode 100644 index 0000000000..4f26e04e66 --- /dev/null +++ b/hdr/symbol.hh @@ -0,0 +1,27 @@ +#ifndef SYMBOL_HH +#define SYMBOL_HH +#include "string.hh" +#include "boxes.hh" +#include "proto.hh" + +struct Symbol { + String tex; + Box dim; + + Symbol (String, Box); + Symbol(); +}; + +struct Parametric_symbol { + Symtables*symtables_; // indirection + + /*****************/ + + Parametric_symbol(Symtables*s) { symtables_ = s; } + Symbol eval(String args1) const; // convenience + Symbol eval(String args1,String arg2) const; // convenience + virtual Symbol eval(svec args)const =0; + virtual ~Parametric_symbol(){} +}; + +#endif diff --git a/src/symbol.cc b/src/symbol.cc new file mode 100644 index 0000000000..907f1d7282 --- /dev/null +++ b/src/symbol.cc @@ -0,0 +1,32 @@ +#include "symbol.hh" + +Symbol::Symbol() + : dim(Interval(0,0),Interval(0,0)) +{ + tex = "\\unknown"; +} +Symbol::Symbol(String s, Box b) + : dim(b) +{ + tex = s; +} + +/****************************************************************/ + +Symbol +Parametric_symbol::eval(String args1)const +{ + svec a; + a.add(args1); + return eval(a); +} + +Symbol +Parametric_symbol::eval(String args1,String arg2)const +{ + svec a; + a.add(args1); + a.add(arg2); + return eval(a); +} +