====================================
Function without arguments
====================================
{{ functionName }}
---
(source_file
    (template
        (function_call
            (identifier))))

====================================
Function with argument
====================================
{{ functionName $ }}
---
(source_file
    (template
        (function_call
            (identifier)
            (argument_list
                (variable)))))

====================================
Function with arguments
====================================
{{ functionName $ . .Field.Field2 1 }}
---
(source_file
    (template
        (function_call
            (identifier)
            (argument_list
                (variable)
                (dot)
                (selector_expression
                    (field
                        (identifier))
                    (field_identifier))
                (int_literal)))))

====================================
Method without arguments
====================================
{{ .Method }}
---
(source_file
    (template
        (field (identifier))))

====================================
Method with argument
====================================
{{ .Method $ }}
---
(source_file
    (template
        (method_call
            (field
                (identifier))
            (argument_list
                (variable)))))

====================================
Method with arguments
====================================
{{ .Method $ . .Field.Field2 1 }}
---
(source_file
    (template
        (method_call
            (field
                (identifier))
            (argument_list
                (variable)
                (dot)
                (selector_expression
                    (field (identifier))
                    (field_identifier))
                (int_literal)))))

====================================
Method on a field without arguments
====================================
{{ .Field.Method }}
---
(source_file
    (template
        (selector_expression
            (field
                (identifier))
            (field_identifier))))

====================================
Method on a field with arguments
====================================
{{ .Field.Method $ . .Field.Field2 1 }}
---
(source_file
    (template
        (method_call
            (selector_expression
                (field
                    (identifier))
                (field_identifier))
            (argument_list
                (variable)
                (dot)
                (selector_expression
                    (field
                        (identifier))
                    (field_identifier))
                (int_literal)))))
