package body Symbol_Table_io is
procedure get ( sb : in out symbol ) is
begin
Symbol_Table_io.get(Standard_Input,sb);
end get;
procedure get ( sb : in out symbol; delimiter : in character ) is
begin
Symbol_Table_io.get(Standard_Input,sb,delimiter);
end get;
procedure get ( ch : in out character; sb : in out symbol ) is
begin
Symbol_Table_io.get(Standard_Input,ch,sb);
end get;
procedure get ( ch : in out character; sb : in out symbol;
delimiter : in character ) is
begin
Symbol_Table_io.get(Standard_Input,ch,sb,delimiter);
end get;
procedure get ( file : in file_type; sb : in out symbol ) is
ch : character;
begin
text_io.get(file,ch);
Symbol_Table_io.get(file,ch,sb);
end get;
procedure get ( file : in file_type; sb : in out symbol;
delimiter : in character ) is
ch : character;
begin
text_io.get(file,ch);
Symbol_Table_io.get(file,ch,sb,delimiter);
end get;
procedure get ( file : in file_type; ch : in out character;
sb : in out symbol ) is
cnt : natural;
begin
if ch = ' '
then while ch = ' ' loop
text_io.get(file,ch);
end loop;
if ch /= ' '
then sb(sb'first) := ch; cnt := 2;
end if;
else sb(sb'first) := ch; cnt := 2;
end if;
if not End_of_Line(file)
then
for i in sb'first+1..sb'last loop
text_io.get(file,ch); cnt := i;
exit when ch = ' ';
sb(i) := ch; cnt := i+1;
exit when End_of_Line(file);
end loop;
end if;
sb(cnt..sb'last) := (cnt..sb'last => ' ');
end get;
procedure get ( file : in file_type; ch : in out character;
sb : in out symbol; delimiter : in character ) is
cnt : natural;
begin
if ch = ' '
then while ch = ' ' loop
text_io.get(file,ch);
end loop;
if ch /= ' '
then sb(sb'first) := ch; cnt := 2;
end if;
else sb(sb'first) := ch; cnt := 2;
end if;
if not End_of_Line(file)
then
for i in sb'first+1..sb'last loop
text_io.get(file,ch); cnt := i;
exit when ch = ' ' or else ch = delimiter;
sb(i) := ch; cnt := i+1;
exit when End_of_Line(file);
end loop;
end if;
sb(cnt..sb'last) := (cnt..sb'last => ' ');
end get;
procedure put ( sb : in symbol ) is
begin
for i in sb'range loop
exit when sb(i) = ' ';
text_io.put(sb(i));
end loop;
end put;
procedure put ( file : in file_type; sb : in symbol ) is
begin
for i in sb'range loop
exit when sb(i) = ' ';
text_io.put(file,sb(i));
end loop;
end put;
end Symbol_Table_io;