本文整理汇总了Java中org.yaml.snakeyaml.tokens.ValueToken类的典型用法代码示例。如果您正苦于以下问题:Java ValueToken类的具体用法?Java ValueToken怎么用?Java ValueToken使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。
ValueToken类属于org.yaml.snakeyaml.tokens包,在下文中一共展示了ValueToken类的6个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的Java代码示例。
示例1: testGetToken
import org.yaml.snakeyaml.tokens.ValueToken; //导入依赖的package包/类
public void testGetToken() {
String data = "string: abcd";
StreamReader reader = new StreamReader(data);
Scanner scanner = new ScannerImpl(reader);
Mark dummy = new Mark("dummy", 0, 0, 0, "", 0);
LinkedList<Token> etalonTokens = new LinkedList<Token>();
etalonTokens.add(new StreamStartToken(dummy, dummy));
etalonTokens.add(new BlockMappingStartToken(dummy, dummy));
etalonTokens.add(new KeyToken(dummy, dummy));
etalonTokens.add(new ScalarToken("string", true, dummy, dummy, (char) 0));
etalonTokens.add(new ValueToken(dummy, dummy));
etalonTokens.add(new ScalarToken("abcd", true, dummy, dummy, (char) 0));
etalonTokens.add(new BlockEndToken(dummy, dummy));
etalonTokens.add(new StreamEndToken(dummy, dummy));
while (!etalonTokens.isEmpty() && scanner.checkToken(etalonTokens.get(0).getTokenId())) {
assertEquals(etalonTokens.removeFirst(), scanner.getToken());
}
assertFalse("Must contain no more tokens: " + scanner.getToken(),
scanner.checkToken(new Token.ID[0]));
}
开发者ID:bmoliveira,项目名称:snake-yaml,代码行数:21,代码来源:ScannerImplTest.java
示例2: fetchValue
import org.yaml.snakeyaml.tokens.ValueToken; //导入依赖的package包/类
/**
* Fetch a value in a block-style mapping.
*
* @see <a href="http://www.yaml.org/spec/1.1/#id863975"></a>
*/
private void fetchValue() {
// Do we determine a simple key?
SimpleKey key = this.possibleSimpleKeys.remove(this.flowLevel);
if (key != null) {
// Add KEY.
this.tokens.add(key.getTokenNumber() - this.tokensTaken, new KeyToken(key.getMark(),
key.getMark()));
// If this key starts a new block mapping, we need to add
// BLOCK-MAPPING-START.
if (this.flowLevel == 0) {
if (addIndent(key.getColumn())) {
this.tokens.add(key.getTokenNumber() - this.tokensTaken,
new BlockMappingStartToken(key.getMark(), key.getMark()));
}
}
// There cannot be two simple keys one after another.
this.allowSimpleKey = false;
} else {
// It must be a part of a complex key.
// Block context needs additional checks. Do we really need them?
// They will be caught by the parser anyway.
if (this.flowLevel == 0) {
// We are allowed to start a complex value if and only if we can
// start a simple key.
if (!this.allowSimpleKey) {
throw new ScannerException(null, null, "mapping values are not allowed here",
reader.getMark());
}
}
// If this value starts a new block mapping, we need to add
// BLOCK-MAPPING-START. It will be detected as an error later by
// the parser.
if (flowLevel == 0) {
if (addIndent(reader.getColumn())) {
Mark mark = reader.getMark();
this.tokens.add(new BlockMappingStartToken(mark, mark));
}
}
// Simple keys are allowed after ':' in the block context.
allowSimpleKey = flowLevel == 0;
// Reset possible simple key on the current level.
removePossibleSimpleKey();
}
// Add VALUE.
Mark startMark = reader.getMark();
reader.forward();
Mark endMark = reader.getMark();
Token token = new ValueToken(startMark, endMark);
this.tokens.add(token);
}
开发者ID:imkiva,项目名称:AndroidApktool,代码行数:62,代码来源:ScannerImpl.java
示例3: scan
import org.yaml.snakeyaml.tokens.ValueToken; //导入依赖的package包/类
private void scan() {
this.tokens.add(new StreamStartToken(mark, mark));
boolean stop = false;
while (!stop) {
findToken();
char ch = data.charAt(index);
switch (ch) {
case '\0':
tokens.add(new StreamEndToken(mark, mark));
stop = true;
break;
case '%':
tokens.add(scanDirective());
break;
case '-':
if ("---".equals(data.substring(index, index + 3))) {
index += 3;
tokens.add(new DocumentStartToken(mark, mark));
}
break;
case '[':
index++;
tokens.add(new FlowSequenceStartToken(mark, mark));
break;
case '{':
index++;
tokens.add(new FlowMappingStartToken(mark, mark));
break;
case ']':
index++;
tokens.add(new FlowSequenceEndToken(mark, mark));
break;
case '}':
index++;
tokens.add(new FlowMappingEndToken(mark, mark));
break;
case '?':
index++;
tokens.add(new KeyToken(mark, mark));
break;
case ':':
index++;
tokens.add(new ValueToken(mark, mark));
break;
case ',':
index++;
tokens.add(new FlowEntryToken(mark, mark));
break;
case '*':
tokens.add(scanAlias());
break;
case '&':
tokens.add(scanAlias());
break;
case '!':
tokens.add(scanTag());
break;
case '"':
tokens.add(scanScalar());
break;
default:
throw new CanonicalException("invalid token");
}
}
scanned = true;
}
开发者ID:bmoliveira,项目名称:snake-yaml,代码行数:81,代码来源:CanonicalScanner.java
示例4: fetchValue
import org.yaml.snakeyaml.tokens.ValueToken; //导入依赖的package包/类
/**
* Fetch a value in a block-style mapping.
*
* @see http://www.yaml.org/spec/1.1/#id863975
*/
private void fetchValue() {
// Do we determine a simple key?
SimpleKey key = this.possibleSimpleKeys.remove(this.flowLevel);
if (key != null) {
// Add KEY.
this.tokens.add(key.getTokenNumber() - this.tokensTaken, new KeyToken(key.getMark(),
key.getMark()));
// If this key starts a new block mapping, we need to add
// BLOCK-MAPPING-START.
if (this.flowLevel == 0) {
if (addIndent(key.getColumn())) {
this.tokens.add(key.getTokenNumber() - this.tokensTaken,
new BlockMappingStartToken(key.getMark(), key.getMark()));
}
}
// There cannot be two simple keys one after another.
this.allowSimpleKey = false;
} else {
// It must be a part of a complex key.
// Block context needs additional checks. Do we really need them?
// They will be caught by the parser anyway.
if (this.flowLevel == 0) {
// We are allowed to start a complex value if and only if we can
// start a simple key.
if (!this.allowSimpleKey) {
throw new ScannerException(null, null, "mapping values are not allowed here",
reader.getMark());
}
}
// If this value starts a new block mapping, we need to add
// BLOCK-MAPPING-START. It will be detected as an error later by
// the parser.
if (flowLevel == 0) {
if (addIndent(reader.getColumn())) {
Mark mark = reader.getMark();
this.tokens.add(new BlockMappingStartToken(mark, mark));
}
}
// Simple keys are allowed after ':' in the block context.
allowSimpleKey = flowLevel == 0;
// Reset possible simple key on the current level.
removePossibleSimpleKey();
}
// Add VALUE.
Mark startMark = reader.getMark();
reader.forward();
Mark endMark = reader.getMark();
Token token = new ValueToken(startMark, endMark);
this.tokens.add(token);
}
开发者ID:cuizhennan,项目名称:snakeyaml,代码行数:62,代码来源:ScannerImpl.java
示例5: fetchValue
import org.yaml.snakeyaml.tokens.ValueToken; //导入依赖的package包/类
/**
* Fetch a value in a block-style mapping.
*
* @see http://www.yaml.org/spec/1.1/#id863975
*/
private void fetchValue() {
// Do we determine a simple key?
SimpleKey key = this.possibleSimpleKeys.remove(this.flowLevel);
if (key != null) {
// Add KEY.
this.tokens.add(key.getTokenNumber() - this.tokensTaken, new KeyToken(key.getMark(),
key.getMark()));
// If this key starts a new block mapping, we need to add
// BLOCK-MAPPING-START.
if (this.flowLevel == 0) {
if (addIndent(key.getColumn())) {
this.tokens.add(key.getTokenNumber() - this.tokensTaken,
new BlockMappingStartToken(key.getMark(), key.getMark()));
}
}
// There cannot be two simple keys one after another.
this.allowSimpleKey = false;
} else {// It must be a part of a complex key.
// Block context needs additional checks.Do we really need them?
// They
// will be catched by the parser anyway.)
if (this.flowLevel == 0) {
// We are allowed to start a complex value if and only if we can
// start a simple key.
if (!this.allowSimpleKey) {
throw new ScannerException(null, null, "mapping values are not allowed here",
reader.getMark());
}
}
// If this value starts a new block mapping, we need to add
// BLOCK-MAPPING-START. It will be detected as an error later by
// the parser.
if (flowLevel == 0) {
if (addIndent(reader.getColumn())) {
Mark mark = reader.getMark();
this.tokens.add(new BlockMappingStartToken(mark, mark));
}
}
// Simple keys are allowed after ':' in the block context.
allowSimpleKey = (flowLevel == 0);
// Reset possible simple key on the current level.
removePossibleSimpleKey();
}
// Add VALUE.
Mark startMark = reader.getMark();
reader.forward();
Mark endMark = reader.getMark();
Token token = new ValueToken(startMark, endMark);
this.tokens.add(token);
}
开发者ID:timvisee,项目名称:TestTheTeacher,代码行数:62,代码来源:ScannerImpl.java
示例6: fetchValue
import org.yaml.snakeyaml.tokens.ValueToken; //导入依赖的package包/类
/**
* Fetch a value in a block-style mapping.
*
* @see http://www.yaml.org/spec/1.1/#id863975
*/
private void fetchValue() {
// Do we determine a simple key?
SimpleKey key = this.possibleSimpleKeys.remove(this.flowLevel);
if (key != null) {
// Add KEY.
this.tokens.add(key.getTokenNumber() - this.tokensTaken, new KeyToken(key.getMark(), key.getMark()));
// If this key starts a new block mapping, we need to add
// BLOCK-MAPPING-START.
if (this.flowLevel == 0) {
if (addIndent(key.getColumn())) {
this.tokens.add(key.getTokenNumber() - this.tokensTaken, new BlockMappingStartToken(key.getMark(), key.getMark()));
}
}
// There cannot be two simple keys one after another.
this.allowSimpleKey = false;
} else {// It must be a part of a complex key.
// Block context needs additional checks.Do we really need them?
// They
// will be catched by the parser anyway.)
if (this.flowLevel == 0) {
// We are allowed to start a complex value if and only if we can
// start a simple key.
if (!this.allowSimpleKey) {
throw new ScannerException(null, null, "mapping values are not allowed here", reader.getMark());
}
}
// If this value starts a new block mapping, we need to add
// BLOCK-MAPPING-START. It will be detected as an error later by
// the parser.
if (flowLevel == 0) {
if (addIndent(reader.getColumn())) {
Mark mark = reader.getMark();
this.tokens.add(new BlockMappingStartToken(mark, mark));
}
}
// Simple keys are allowed after ':' in the block context.
allowSimpleKey = (flowLevel == 0);
// Reset possible simple key on the current level.
removePossibleSimpleKey();
}
// Add VALUE.
Mark startMark = reader.getMark();
reader.forward();
Mark endMark = reader.getMark();
Token token = new ValueToken(startMark, endMark);
this.tokens.add(token);
}
开发者ID:OpenNTF,项目名称:org.openntf.domino,代码行数:59,代码来源:ScannerImpl.java
注:本文中的org.yaml.snakeyaml.tokens.ValueToken类示例整理自Github/MSDocs等源码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。 |
请发表评论