* @param fieldNames The names of all the fields.
* @return The field declaration of the record array.
*/
private FieldDeclaration _createRecordArray(AST ast, CompilationUnit root,
TypeAnalyzerState state, List fieldNames) {
VariableDeclarationFragment fragment = ast
.newVariableDeclarationFragment();
fragment.setName(ast.newSimpleName(RECORDS_NAME));
ArrayCreation initializer = ast.newArrayCreation();
String typeName = getClassName(FieldRecord.class, state, root);
initializer.setType(ast.newArrayType(createType(ast, typeName)));
Iterator fields = fieldNames.iterator();
ArrayInitializer arrayInitializer = ast.newArrayInitializer();
initializer.setInitializer(arrayInitializer);
List expressions = arrayInitializer.expressions();
while (fields.hasNext()) {
String fieldName = (String) fields.next();
String recordName = _getRecordName(fieldName);
expressions.add(ast.newSimpleName(recordName));
}
fragment.setInitializer(initializer);
FieldDeclaration array = ast.newFieldDeclaration(fragment);
array.setType(ast.newArrayType(createType(ast, typeName)));
array.modifiers().add(