swirl
Guide to OmniMark 8   OmniMark home
docs home 
IndexConceptsTasksSyntaxLibrariesLegacy LibrariesErrors
 
  Related Syntax   Related Concepts  
declaration/definition  

define infix-function

 
 

Syntax

define return-type infix-function
   value type name
 operator
 value type name
 (as function-body) | elsewhere


Purpose

You can use define infix-function to define an infix function or operator. An infix function is a function that takes exactly two arguments. The function name is placed between the first and the second argument. The function name may be an OmniMark name or symbol.

The following example defines an infix function to determine the distance between two characters in the ASCII character set:

  define integer infix-function
   value string a
   distance
   value string b
   as
     assert length of a = 1 & length of b = 1
      message "Single characters only please."
     return binary b - binary a
  
  process
  
     output "d" % ("A" distance "Q")

An infix function must return a value. The arguments to an infix function must be passed as value arguments.

Infix functions may be overloaded but not dynamic or external.

    Related Syntax
   function, define function
   define conversion-function
   define overloaded function, dynamic, overriding
 
Related Concepts
   Functions
   Functions: infix
   Functions: overloaded
   Modules, defining
   Names and symbols
 
 

Top [ INDEX ] [ CONCEPTS ] [ TASKS ] [ SYNTAX ] [ LIBRARIES ] [ LEGACY LIBRARIES ] [ ERRORS ]

OmniMark 8.2.0 Documentation Generated: March 13, 2008 at 3:33:48 pm
If you have any comments about this section of the documentation, please use this form.

Copyright © Stilo International plc, 1988-2008.