public override void EnterFormalParameter(JavaParser.FormalParameterContext context) { // type of parameter TypeTypeListener typeTypeListener = new TypeTypeListener(); context.typeType().EnterRule(typeTypeListener); TypeName typeName = null; if (typeTypeListener.PrimitiveTypeName != null) { typeName = typeTypeListener.PrimitiveTypeName; } else if (!string.IsNullOrEmpty(typeTypeListener.ID)) { typeName = TypeName.For(typeTypeListener.ID); } else { typeName = PrimitiveTypeName.Void; } // name of parameter VariableDeclaratorIdListener variableDeclaratorIdListener = new VariableDeclaratorIdListener(); context.variableDeclaratorId().EnterRule(variableDeclaratorIdListener); Argument = new Argument(variableDeclaratorIdListener.ID, typeName); }
public override void EnterTypeTypeOrVoid(JavaParser.TypeTypeOrVoidContext context) { if (context.typeType() == null) { TypeName = PrimitiveTypeName.Void; return; } TypeTypeListener typeTypeListener = new TypeTypeListener(); context.typeType().EnterRule(typeTypeListener); if (typeTypeListener.PrimitiveTypeName != null) { TypeName = typeTypeListener.PrimitiveTypeName; } else if (!string.IsNullOrEmpty(typeTypeListener.ID)) { TypeName = TypeName.For(typeTypeListener.ID); } else { TypeName = PrimitiveTypeName.Void; } }
public override void EnterTypeArgument(JavaParser.TypeArgumentContext context) { if (context.typeType() == null) { Type = PrimitiveTypeName.Void.FullyQualified; return; } TypeTypeListener typeTypeListener = new TypeTypeListener(); context.typeType().EnterRule(typeTypeListener); if (typeTypeListener.ID != null) { Type = typeTypeListener.ID; } else if (typeTypeListener.QualifiedName != null) { Type = typeTypeListener.QualifiedName; } else if (typeTypeListener.PrimitiveTypeName != null) { Type = PrimitiveTypeName.Void.FullyQualified; } }
public override void EnterFieldDeclaration(JavaParser.FieldDeclarationContext context) { PrimitiveTypeName primitiveTypeName = null; string qualifiedName = ""; if (context.typeType() != null) { TypeTypeListener typeTypeListener = new TypeTypeListener(); context.typeType().EnterRule(typeTypeListener); primitiveTypeName = typeTypeListener.PrimitiveTypeName; qualifiedName = typeTypeListener.QualifiedName; } List <string> IDs = new List <string>(); if (context.variableDeclarators() != null) { VariableDeclaratorsListener variableDeclaratorsListener = new VariableDeclaratorsListener(); context.variableDeclarators().EnterRule(variableDeclaratorsListener); IDs = variableDeclaratorsListener.IDs; } if (primitiveTypeName == null && string.IsNullOrEmpty(qualifiedName)) { primitiveTypeName = TypeName.For("void") as PrimitiveTypeName; } string fieldName = IDs.FirstOrDefault(); FieldName fieldFqn = new FieldName( parentClass.className, fieldName, primitiveTypeName != null ? primitiveTypeName.Signature : TypeName.For(qualifiedName).Signature); FieldInfo fieldInfo = new FieldInfo( fieldFqn, parentClass.className, AccessFlags.AccPublic, new SourceCodeSnippet(context.GetFullText(), SourceCodeLanguage.Java)); parentClass.Children.Add(fieldInfo); }