Raw constructor for strin-p structures.
Syntax:
(strin chars line col file)
This is the lowest-level constructor for strin-p structures. It simply conses together a structure with the specified fields.
Note: It's generally better to use macros like make-strin or change-strin instead. These macros lead to more readable and robust code, because you don't have to remember the order of the fields.
The strin-p structures we create here are just constructed with ordinary cons. If you want to create honsed structures, see honsed-strin instead.
This is an ordinary constructor function introduced by defaggregate.
Function:
(defun strin (chars line col file) (declare (xargs :guard (and (character-listp chars) (posp line) (natp col) (stringp file)))) (cons :strin (cons (cons 'chars chars) (cons (cons 'line line) (cons (cons 'col col) (cons (cons 'file file) nil))))))