HPlogo System Debug Reference Manual: HP 3000 MPE/iX Computer Systems > Chapter 8 System Debug Standard Functions

func symlen

» 

Technical documentation

Complete book in PDF
» Feedback

 » Table of Contents

 » Index

Returns the length of a data structure in bits or bytes.

Syntax

   symlen (pathspec [units])  

Formal Declaration

   symlen:u32 (pathspec:str [units:u32=$8]) 

Parameters

pathspec

A path specification, as described in chapter 5, "Symbolic Formatting/Symbolic Access."

units

Specifies the units (that is, bit width) in which the result is given. 1 means bits, 8 means bytes, 32 means words. The default is bytes.

The symbolic length is rounded up to the nearest whole unit.

Examples

   $nmdebug > symopen gradtyp.demo

Opens the symbolic data type file gradtyp.demo. It is assumed that the Debug variable addr contains the address of a StudentRecord data structure in virtual memory. The following code fragment is from this file:

   CONST     MINGRADES   = 1;     MAXGRADES   = 10;

             MINSTUDENTS = 1;     MAXSTUDENTS = 5;



   TYPE

      GradeRange    = MINGRADES .. MAXGRADES;

      GradesArray   = ARRAY [ GradeRange ] OF integer;



      Class         = ( SENIOR, JUNIOR, SOPHOMORE, FRESHMAN );

      NameStr       = string[8];



      StudentRecord = RECORD

                        Name      : NameStr;

                        Id        : Integer;

                        Year      : Class;

                        NumGrades : GradeRange;

                        Grades    : GradesArray;

                      END;
   $nmdebug > wl SYMLEN("StudentRecord")

   $40

Returns the size of a complete StudentRecord in bytes.

   $nmdebug > wl SYMLEN("StudentRecord"  1)

   $200

Returns the size of a complete StudentRecord in bits.

   $nmdebug > wl SYMLEN("StudentRecord.Grades" #32)

   $a

Returns the size of grades field in a StudentRecord in words.

Limitations, Restrictions

none

Feedback to webmaster