code: def validate_vertex_field_directive_interactions(parent_location, vertex_field_name, directives):
      
      fold_directive = directives.get('fold', None)
      optional_directive = directives.get('optional', None)
      output_source_directive = directives.get('output_source', None)
      recurse_directive = directives.get('recurse', None)
  
      if fold_directive and optional_directive:
          raise GraphQLCompilationError(u'@fold and @optional may not appear at the same '
                                        u'vertex field! Parent location: {}, vertex field name: {}'
                                        .format(parent_location, vertex_field_name))
  
      if fold_directive and output_source_directive:
          raise GraphQLCompilationError(u'@fold and @output_source may not appear at the same '
                                        u'vertex field! Parent location: {}, vertex field name: {}'
                                        .format(parent_location, vertex_field_name))
  
      if fold_directive and recurse_directive:
          raise GraphQLCompilationError(u'@fold and @recurse may not appear at the same '
                                        u'vertex field! Parent location: {}, vertex field name: {}'
                                        .format(parent_location, vertex_field_name))
  
      if optional_directive and output_source_directive:
          raise GraphQLCompilationError(u'@optional and @output_source may not appear at the same '
                                        u'vertex field! Parent location: {}, vertex field name: {}'
                                        .format(parent_location, vertex_field_name))
  
      if optional_directive and recurse_directive:
          raise GraphQLCompilationError(u'@optional and @recurse may not appear at the same '
                                        u'vertex field! Parent location: {}, vertex field name: {}'
                                        .format(parent_location, vertex_field_name))
docs: Ensure that the specified vertex field directives are not mutually disallowed.