X-Git-Url: http://nitlanguage.org diff --git a/src/parser/xss/tokens.xss b/src/parser/xss/tokens.xss index 2796cde..5352944 100644 --- a/src/parser/xss/tokens.xss +++ b/src/parser/xss/tokens.xss @@ -1,35 +1,34 @@ -/* This file is part of NIT ( http://www.nitlanguage.org ). - * - * Copyright 2008 Jean Privat - * Based on algorithms developped for ( http://www.sablecc.org/ ). - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ +$ // This file is part of NIT ( http://www.nitlanguage.org ). +$ // +$ // Copyright 2008 Jean Privat +$ // Based on algorithms developped for ( http://www.sablecc.org/ ). +$ // +$ // Licensed under the Apache License, Version 2.0 (the "License"); +$ // you may not use this file except in compliance with the License. +$ // You may obtain a copy of the License at +$ // +$ // http://www.apache.org/licenses/LICENSE-2.0 +$ // +$ // Unless required by applicable law or agreed to in writing, software +$ // distributed under the License is distributed on an "AS IS" BASIS, +$ // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +$ // See the License for the specific language governing permissions and +$ // limitations under the License. $ template make_abs_tokens() $ foreach {//token} $ if {@parser_index} class @ename -special Token + super Token end $ end $ end -class EOF -special Token +class EOF + super Token private init noinit do end end class PError -special EOF + super EOF private init noinit do end end $ end template @@ -37,66 +36,59 @@ $ end template $ template make_tokens() redef class Token - readable writable attr _text: String - readable attr _filename: String - readable attr _line: Int - readable attr _pos: Int - - meth parser_index: Int is abstract + readable var _text: String - redef meth to_s: String do + fun parser_index: Int is abstract + + redef fun to_s: String do return "'{_text}'" end end $ foreach {//token} -$ if {@parser_index} +$ if {@parser_index} redef class @ename - redef meth parser_index: Int + redef fun parser_index: Int do - return @parser_index + return @parser_index end $ if {not(@text)} - init init_tk(text: String, fname: String, line: Int, pos: Int) + init init_tk(text: String, loc: Location) do _text = text $ else - init init_tk(fname: String, line: Int, pos: Int) + init init_tk(loc: Location) do _text = once "${sablecc:string2escaped_unicode(@text)}" $ end - _filename = fname - _line = line - _pos = pos + _location = loc end end -$ end if +$ end if $ end foreach -redef class EOF - redef meth parser_index: Int +redef class EOF + redef fun parser_index: Int do - return ${tokens/eof/@parser_index} + return ${tokens/eof/@parser_index} end - - init(fname: String, line: Int, pos: Int) + + init(loc: Location) do - _filename = fname _text = "" - _line = line - _pos = pos + _location = loc end end redef class PError - readable writable attr _message: String - - init init_error(fname: String, line: Int, pos: Int, message: String) + readable var _message: String + + init init_error(message: String, loc: Location) do - init(fname, line, pos) - _message = message + init(loc) + _message = message end end