blob: 22c7a4ef42e4f2b0e154e23c8fe7a102a631c249 [file] [log] [blame]
// Copyright (c) 2009 The Chromium Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
package org.jetbrains.protocolReader;
class FieldLoader {
public static final char FIELD_PREFIX = '_';
private final String fieldName;
final ValueReader valueReader;
FieldLoader(String fieldName, ValueReader valueReader) {
this.fieldName = fieldName;
this.valueReader = valueReader;
}
public String getFieldName() {
return fieldName;
}
public void writeFieldDeclaration(TextOutput out) {
out.append("private ");
valueReader.appendFinishedValueTypeName(out);
out.append(' ').append(FIELD_PREFIX).append(fieldName);
if (valueReader instanceof PrimitiveValueReader) {
String defaultValue = ((PrimitiveValueReader)valueReader).defaultValue;
if (defaultValue != null) {
out.append(" = ").append(defaultValue);
}
}
out.semi();
}
}