3 * Copyright 2002-2004 The Ant-Contrib project
5 * Licensed under the Apache License, Version 2.0 (the "License");
6 * you may not use this file except in compliance with the License.
7 * You may obtain a copy of the License at
9 * http://www.apache.org/licenses/LICENSE-2.0
11 * Unless required by applicable law or agreed to in writing, software
12 * distributed under the License is distributed on an "AS IS" BASIS,
13 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14 * See the License for the specific language governing permissions and
15 * limitations under the License.
17 package net
.sf
.antcontrib
.cpptasks
.borland
;
18 import net
.sf
.antcontrib
.cpptasks
.parser
.AbstractParser
;
19 import net
.sf
.antcontrib
.cpptasks
.parser
.AbstractParserState
;
20 import net
.sf
.antcontrib
.cpptasks
.parser
.FilenameState
;
21 public class CfgFilenameState
extends FilenameState
{
22 private char terminator
;
23 public CfgFilenameState(AbstractParser parser
, char[] terminators
) {
24 super(parser
, terminators
);
25 terminator
= terminators
[0];
27 public AbstractParserState
consume(char ch
) {
29 // if a ';' is encountered then
30 // close the previous filename by sending a
31 // recognized terminator to our super class
32 // and stay in this state for more filenamese
34 super.consume(terminator
);
37 AbstractParserState newState
= super.consume(ch
);
39 // change null (consume to end of line)
40 // to look for next switch character
41 if (newState
== null) {
42 newState
= getParser().getNewLineState();