Exemple #1
0
		public object getMacroNames()
		{
			// ******
			var array = new NmpArray();

			// ******
			var list = mp.GetMacros( false );

			var names = new NmpStringList();
			foreach( IMacro macro in list ) {
				names.Add( macro.Name );
			}

			array.Add( "unsorted", names );
			names.Sort();
			array.Add( "sorted", names );
			
			
			list.Sort( ( a, b ) => string.Compare( a.Name, b.Name ) );


			// ******

//		Builtin,
//		Object,
//		Text,

			names = new NmpStringList();
			foreach( IMacro macro in list ) {
				if( MacroType.Builtin == macro.MacroType ) {
					names.Add( macro.Name );
				}
			}

			array.Add( "builtin", names );

			names = new NmpStringList();
			foreach( IMacro macro in list ) {
				if( MacroType.Object == macro.MacroType ) {
					names.Add( macro.Name );
				}
			}

			array.Add( "object", names );

			names = new NmpStringList();
			foreach( IMacro macro in list ) {
				if( MacroType.Text == macro.MacroType ) {
					names.Add( macro.Name );
				}
			}

			array.Add( "text", names );

			// ******
			return array;
		}
Exemple #2
0
		/////////////////////////////////////////////////////////////////////////////

		public static NmpStringList CoreAssemblies( IList<string> moreAssemblies )
		{
			// ******
			var assemblies = new NmpStringList( unique : true );
			
			assemblies.Add( "System.dll" );
			assemblies.Add( "System.Core.dll" );
			assemblies.Add( "Microsoft.CSharp.dll" );

	/*

		things to watch out for:

			o		the compile (and razor) code is currently in Csx.exe but it will be
					moved to NmpBase when it is all smoothed out and running

						so, at some point DefaultRazorTemplateBase will NOT be in the
						same assembly as this code


	*/

//			assemblies.Add( Assembly.GetExecutingAssembly().CodeBase.Substring( 8 ) );
//
//			//
//			// this get NmpBase.dll
//			//
//			assemblies.Add( typeof(NmpStringList).Assembly.CodeBase.Substring( 8 ) );

			if( null != moreAssemblies ) {
				assemblies.AddRange( moreAssemblies );
			}

			// ******
			assemblies.Sort();
			return assemblies;
		}