Name

def-struct — Defines a C structure. Macro

Syntax

	  def-struct name &rest fields
	

Arguments and Values

name

A symbol that names the structure.

fields

A variable number of field defintions. Each definition is a list consisting of a symbol naming the field followed by its foreign type.

Description

Declares a structure. A special type is available as a slot in the field. It is a pointer that points to an instance of the parent structure. It's type is :pointer-self.

Examples

(def-struct foo (a :unsigned-int) 
                (b (* :char)) 
                (c (:array :int 10)) 
                (next :pointer-self))
	

Side Effects

Creates a foreign type.

Affected by

None.

Exceptional Situations

None.