2
// Author: Scott Ellington <scott.ellington@gmail.com>
4
// Copyright (C) 2006 Scott Ellington and authors
6
// Permission is hereby granted, free of charge, to any person obtaining
7
// a copy of this software and associated documentation files (the
8
// "Software"), to deal in the Software without restriction, including
9
// without limitation the rights to use, copy, modify, merge, publish,
10
// distribute, sublicense, and/or sell copies of the Software, and to
11
// permit persons to whom the Software is furnished to do so, subject to
12
// the following conditions:
14
// The above copyright notice and this permission notice shall be
15
// included in all copies or substantial portions of the Software.
17
// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
18
// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
19
// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
20
// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
21
// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
22
// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
23
// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
28
using System.Collections;
30
namespace MonoDevelop.Autotools
36
Hashtable vars = new Hashtable ();
38
public string GetVariable (string key)
40
if ( vars.ContainsKey (key) ) return vars [key] as string;
44
public void SetVariable (string key, string val)
49
public void AppendToVariable ( string key, string val )
51
vars [key] += " " + val;
54
public void Append (string txt)
56
content += "\n" + txt;
59
public void Write (TextWriter tw)
61
StringBuilder sb = new StringBuilder ();
63
foreach( DictionaryEntry de in vars )
64
sb.AppendFormat("{0} = {1}\n", de.Key, de.Value);
66
tw.Write ( content + sb.ToString() );