Last change
on this file since 440 was
440,
checked in by Mateusz Poszwa, 8 years ago
|
- Updated Xtext-based Framclipse
- Deleted previous version of Framclipse
|
-
Property svn:eol-style set to
native
|
File size:
1.1 KB
|
Line | |
---|
1 | package com.framsticks.framclipse; |
---|
2 | |
---|
3 | import org.eclipse.xtext.common.services.DefaultTerminalConverters; |
---|
4 | import org.eclipse.xtext.conversion.IValueConverter; |
---|
5 | import org.eclipse.xtext.conversion.ValueConverter; |
---|
6 | import org.eclipse.xtext.conversion.ValueConverterException; |
---|
7 | import org.eclipse.xtext.conversion.impl.AbstractToStringConverter; |
---|
8 | import org.eclipse.xtext.nodemodel.INode; |
---|
9 | |
---|
10 | public class FramScriptValueConverterService extends DefaultTerminalConverters { |
---|
11 | |
---|
12 | @ValueConverter(rule = "HEADER_VALUE") |
---|
13 | public IValueConverter<String> HEADER_VALUE() { |
---|
14 | |
---|
15 | return new AbstractToStringConverter<String>() { |
---|
16 | |
---|
17 | @Override |
---|
18 | protected String internalToValue(String s, INode node) |
---|
19 | throws ValueConverterException { |
---|
20 | String r = s; |
---|
21 | if (s.startsWith("~")) { |
---|
22 | r = s.substring(1, s.lastIndexOf('~')); |
---|
23 | } |
---|
24 | return r.trim().replaceAll("\\~", "~"); |
---|
25 | } |
---|
26 | |
---|
27 | }; |
---|
28 | } |
---|
29 | |
---|
30 | @ValueConverter(rule = "ML_STRING") |
---|
31 | public IValueConverter<String> ML_STRING() { |
---|
32 | |
---|
33 | return new AbstractToStringConverter<String>() { |
---|
34 | |
---|
35 | @Override |
---|
36 | protected String internalToValue(String s, INode node) |
---|
37 | throws ValueConverterException { |
---|
38 | return s.substring(3, s.length()-3); |
---|
39 | } |
---|
40 | |
---|
41 | }; |
---|
42 | } |
---|
43 | } |
---|
Note: See
TracBrowser
for help on using the repository browser.