@rem :: Licensed to the Apache Software Foundation (ASF) under one   *
@rem :: or more contributor license agreements.  See the NOTICE file *
@rem :: distributed with this work for additional information        *
@rem :: regarding copyright ownership.  The ASF licenses this file   *
@rem :: to you under the Apache License, Version 2.0 (the            *
@rem :: "License"); you may not use this file except in compliance   *
@rem :: with the License.  You may obtain a copy of the License at   *
@rem ::                                                              *
@rem ::   http://www.apache.org/licenses/LICENSE-2.0                 *
@rem ::                                                              *
@rem :: Unless required by applicable law or agreed to in writing,   *
@rem :: software distributed under the License is distributed on an  *
@rem :: "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY       *
@rem :: KIND, either express or implied.  See the License for the    *
@rem :: specific language governing permissions and limitations      *
@rem :: under the License.                                           *
@set q=-q
@set b=-b csharp
@set d=-d ../../../target/generated-sources/main/etch/csharp
@set i=-I .
@set n=-n

@set walf=-w all,force

@set testsdir=tests\src\main\etch
@set examplesdir=examples

@set x=%CD%\
@pushd %testsdir%

@call %x%scripts\etch-eclipse.bat %q% %b% %n% %d% %i%        Async.etch
@call %x%scripts\etch-eclipse.bat %q% %b% %n% %d% %i%        Bar.etch
@call %x%scripts\etch-eclipse.bat %q% %b% %n% %d% %i%        Baz.etch
@call %x%scripts\etch-eclipse.bat %q% %b% %n% %d% %i%        BigIdl.etch
@call %x%scripts\etch-eclipse.bat %q% %b% %n% %d% %i%        Closing.etch
@call %x%scripts\etch-eclipse.bat %q% %b% %n% %d% %i%        Cuae.etch
@call %x%scripts\etch-eclipse.bat %q% %b% %n% %d% %i%        Foo.etch
@call %x%scripts\etch-eclipse.bat %q% %b% %n% %d% %i%        Inheritance.etch
@call %x%scripts\etch-eclipse.bat %q% %b% %n% %d% %i% %walf% Test1.etch
@call %x%scripts\etch-eclipse.bat %q% %b% %n% %d% %i%        Test2.etch
@call %x%scripts\etch-eclipse.bat %q% %b% %n% %d% %i%        Test3.etch
@call %x%scripts\etch-eclipse.bat %q% %b% %n% %d% %i%        Test4.etch
@rem *** Test5.etch is a negative test ***
@call %x%scripts\etch-eclipse.bat %q% %b% %n% %d% %i%        Test6.etch
@call %x%scripts\etch-eclipse.bat %q% %b% %n% %d% %i% %walf% TestIncludes.etch
@rem *** TestReservedWords.etch is a negative test ***
@call %x%scripts\etch-eclipse.bat %q% %b% %n% %d% %i%        Types.etch

@popd
@pushd %examplesdir%

@pushd chat\src\main\etch
@call %x%scripts\etch-eclipse.bat %q% %b% %n% %d% %i%        Chat.etch
@popd

@pushd distmap\src\main\etch
@call %x%scripts\etch-eclipse.bat %q% %b% %n% %d% %i%        DistributedHashTable.etch
@popd

@pushd example\src\main\etch
@call %x%scripts\etch-eclipse.bat %q% %b% %n% %d% %i%        Example.etch
@popd

@pushd perf\src\main\etch
@call %x%scripts\etch-eclipse.bat %q% %b% %n% %d% %i%        Perf.etch
@popd

@popd
