edu.isi.stella.utilities
Class Utilities

java.lang.Object
  extended by edu.isi.stella.utilities.Utilities

public class Utilities
extends java.lang.Object


Field Summary
static Cons $ALL_MEASURES$
           
static Cons $BASE_MEASURES$
           
static HashTable $DOCUMENTED_OBJECTS_REGISTRY$
           
static StellaSpecialVariable $MANUAL_OUTPUT_LANGUAGE$
           
static StellaSpecialVariable $MANUAL_OUTPUT_STREAM$
           
static java.lang.String $MANUAL_TEMPLATE_COMMAND_PREFIX$
           
static Ratio $RATIO_ONE$
           
static List $TEXINFO_STYLE_FEATURES$
          A list of features that can modulate some aspects of how certain objects are described.
static java.lang.String $TEXINFO_WORD_DELIMITERS$
           
static Cons $UNIT_TOKENIZER_TABLE_DEFINITION$
           
static TokenizerTable $UNIT_TOKENIZER_TABLE$
           
static Keyword KWD_DELIMITER
           
static Keyword KWD_DIGIT
           
static Keyword KWD_EOF
           
static Keyword KWD_ERROR
           
static Keyword KWD_FRACTION
           
static Keyword KWD_INCLUDE
           
static Keyword KWD_INFIX_PARAMETER_LISTS
           
static Keyword KWD_INTEGER
           
static Keyword KWD_OTHERWISE
           
static Keyword KWD_PRESERVE
           
static Keyword KWD_START
           
static Keyword KWD_TEXINFO
           
static Keyword KWD_UNIT
           
static Surrogate SGT_STELLA_CONS
           
static Surrogate SGT_STELLA_GLOBAL_VARIABLE
           
static Surrogate SGT_STELLA_MODULE
           
static Surrogate SGT_STELLA_SLOT
           
static Surrogate SGT_STELLA_TIME_DURATION
           
static Surrogate SGT_STELLA_TYPE_SPEC
           
static Surrogate SGT_UTILITIES_DIM_NUMBER
           
static Surrogate SGT_UTILITIES_MEASURE
           
static Surrogate SGT_UTILITIES_RATIO
           
static Symbol SYM_STELLA_$
           
static Symbol SYM_STELLA_aBODY
           
static Symbol SYM_STELLA_aREST
           
static Symbol SYM_STELLA_DOCUMENTATION
           
static Symbol SYM_STELLA_METHOD_BODY_ARGUMENTp
           
static Symbol SYM_STELLA_METHOD_COMMANDp
           
static Symbol SYM_STELLA_METHOD_MACROp
           
static Symbol SYM_STELLA_METHOD_STARTUP_CLASSNAME
           
static Symbol SYM_STELLA_METHOD_VARIABLE_ARGUMENTSp
           
static Symbol SYM_STELLA_NAME
           
static Symbol SYM_STELLA_SLOT_TYPE_SPECIFIER
           
static Symbol SYM_STELLA_VARIABLE_TYPE_SPECIFIER
           
static Symbol SYM_UTILITIES_BASE_UNIT
           
static Symbol SYM_UTILITIES_DENOMINATOR
           
static Symbol SYM_UTILITIES_MAGNITUDE
           
static Symbol SYM_UTILITIES_MANUAL_DESCRIBE_OBJECT
           
static Symbol SYM_UTILITIES_NUMERATOR
           
static Symbol SYM_UTILITIES_PID
           
static Symbol SYM_UTILITIES_PREFERRED_UNITS
           
static Symbol SYM_UTILITIES_PRIME_ID
           
static Symbol SYM_UTILITIES_SCALE
           
static Symbol SYM_UTILITIES_STARTUP_MANUALS
           
static Symbol SYM_UTILITIES_STARTUP_UNIT_DEFS
           
static Symbol SYM_UTILITIES_STARTUP_UNITS
           
static Symbol SYM_UTILITIES_STARTUP_UTILITIES_SYSTEM
           
 
Constructor Summary
Utilities()
           
 
Method Summary
static boolean alreadyDocumentedObjectP(Stella_Object renamed_Object)
           
static void clearDocumentedObjectsRegistry()
           
static Cons computeMeasuresForInteger(int value)
           
static java.lang.String computeUnitsForInteger(int value, boolean negateExponentP)
           
static DimNumber dmsToDegrees(Cons l)
          Converts a (Degree Minute Second) to decimal degrees.
static void generateManual(Cons manualSpec)
          Generate a TEXINFO file containing a list of documented commands.
static void generateManualFromTemplate(java.lang.String templatefile, java.lang.String outputfile)
           
static DimNumber hmsToHours(Cons l)
          Converts a (Hour Minute Second) to decimal hours
static void initializeUnitDefinitions()
          Measure conversion factors.
static int ipower(int x, int exp)
           
static Stella_Object lookupObjectFromSpecification(Stella_Object specification)
           
static void manualDescribeObject(Stella_Object renamed_Object, Stella_Object specification, OutputStream stream)
           
static void manualDescribeUncategorizedObjects(Module module, OutputStream stream)
           
static java.lang.String manualExpandTemplateCommands(java.lang.String line)
           
static void registerDocumentedObject(Stella_Object renamed_Object)
           
static void resetMeasures()
           
static void showMeasure(java.lang.String measureName)
          Print all units and scale factors for measure measureName.
static void showMeasureEvaluatorWrapper(Cons arguments)
           
static void showMeasures()
          Print all defined measures.
static void texinfoDescribeClass(Stella_Class renamed_Class, OutputStream stream)
           
static void texinfoDescribeDocumentationString(Stella_Object renamed_Object, java.lang.String documentation, OutputStream stream, List parameters)
           
static void texinfoDescribeMethod(MethodSlot method, OutputStream stream)
           
static void texinfoDescribeSlot(StorageSlot slot, OutputStream stream)
           
static void texinfoDescribeTypeDeclaration(java.lang.String parameter, StandardObject type, java.lang.String modifier, OutputStream stream)
           
static void texinfoDescribeUnimplementedObject(Stella_Object specification, OutputStream stream)
           
static void texinfoDescribeVariable(GlobalVariable variable, OutputStream stream)
           
static java.lang.String texinfoEscapeString(java.lang.String string)
           
static java.lang.String texinfoGetParagraphCommand(java.lang.String string, int start)
           
static List texinfoGetRealMethodParameterNames(MethodSlot method)
           
static List texinfoGetRealMethodParametersAndTypes(MethodSlot method, java.lang.Object[] MV_returnarray)
           
static void texinfoInsertDoc(Stella_Object spec)
           
static void texinfoInsertPreamble()
           
static boolean texinfoObjectL(Stella_Object object1, Stella_Object object2)
           
static boolean texinfoSpecialCharacterP(char ch)
           
static DimNumber timeDurationToDim(TimeDuration duration)
          Converts the time duration duration to its equivalent value as dimensioned number.
static double unitToScaleFactorAndId(java.lang.String definition, java.lang.Object[] MV_returnarray)
           
static java.lang.String yieldTexinfoBareName(Stella_Object name)
           
static java.lang.String yieldTexinfoConstant(Symbol name)
           
static java.lang.String yieldTexinfoParameterName(java.lang.String name)
           
static java.lang.String yieldTexinfoTypeSpec(Stella_Object typeSpec)
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

$TEXINFO_STYLE_FEATURES$

public static List $TEXINFO_STYLE_FEATURES$
A list of features that can modulate some aspects of how certain objects are described. Currently understood features: :INFIX-PARAMETER-LISTS.


SGT_STELLA_CONS

public static Surrogate SGT_STELLA_CONS

SGT_STELLA_TYPE_SPEC

public static Surrogate SGT_STELLA_TYPE_SPEC

$TEXINFO_WORD_DELIMITERS$

public static java.lang.String $TEXINFO_WORD_DELIMITERS$

SYM_STELLA_VARIABLE_TYPE_SPECIFIER

public static Symbol SYM_STELLA_VARIABLE_TYPE_SPECIFIER

SYM_STELLA_DOCUMENTATION

public static Symbol SYM_STELLA_DOCUMENTATION

SYM_STELLA_SLOT_TYPE_SPECIFIER

public static Symbol SYM_STELLA_SLOT_TYPE_SPECIFIER

SYM_STELLA_aREST

public static Symbol SYM_STELLA_aREST

SYM_STELLA_aBODY

public static Symbol SYM_STELLA_aBODY

SYM_STELLA_METHOD_MACROp

public static Symbol SYM_STELLA_METHOD_MACROp

SYM_STELLA_METHOD_COMMANDp

public static Symbol SYM_STELLA_METHOD_COMMANDp

SYM_STELLA_METHOD_VARIABLE_ARGUMENTSp

public static Symbol SYM_STELLA_METHOD_VARIABLE_ARGUMENTSp

SYM_STELLA_METHOD_BODY_ARGUMENTp

public static Symbol SYM_STELLA_METHOD_BODY_ARGUMENTp

KWD_INFIX_PARAMETER_LISTS

public static Keyword KWD_INFIX_PARAMETER_LISTS

$MANUAL_OUTPUT_LANGUAGE$

public static final StellaSpecialVariable $MANUAL_OUTPUT_LANGUAGE$

KWD_TEXINFO

public static Keyword KWD_TEXINFO

$DOCUMENTED_OBJECTS_REGISTRY$

public static HashTable $DOCUMENTED_OBJECTS_REGISTRY$

SGT_STELLA_SLOT

public static Surrogate SGT_STELLA_SLOT

SGT_STELLA_GLOBAL_VARIABLE

public static Surrogate SGT_STELLA_GLOBAL_VARIABLE

SGT_STELLA_MODULE

public static Surrogate SGT_STELLA_MODULE

SYM_UTILITIES_MANUAL_DESCRIBE_OBJECT

public static Symbol SYM_UTILITIES_MANUAL_DESCRIBE_OBJECT

$MANUAL_OUTPUT_STREAM$

public static final StellaSpecialVariable $MANUAL_OUTPUT_STREAM$

$MANUAL_TEMPLATE_COMMAND_PREFIX$

public static java.lang.String $MANUAL_TEMPLATE_COMMAND_PREFIX$

SYM_UTILITIES_STARTUP_MANUALS

public static Symbol SYM_UTILITIES_STARTUP_MANUALS

SYM_STELLA_METHOD_STARTUP_CLASSNAME

public static Symbol SYM_STELLA_METHOD_STARTUP_CLASSNAME

$ALL_MEASURES$

public static Cons $ALL_MEASURES$

$BASE_MEASURES$

public static Cons $BASE_MEASURES$

$RATIO_ONE$

public static Ratio $RATIO_ONE$

SGT_UTILITIES_RATIO

public static Surrogate SGT_UTILITIES_RATIO

SYM_UTILITIES_NUMERATOR

public static Symbol SYM_UTILITIES_NUMERATOR

SYM_UTILITIES_DENOMINATOR

public static Symbol SYM_UTILITIES_DENOMINATOR

$UNIT_TOKENIZER_TABLE_DEFINITION$

public static Cons $UNIT_TOKENIZER_TABLE_DEFINITION$

KWD_START

public static Keyword KWD_START

SYM_STELLA_$

public static Symbol SYM_STELLA_$

KWD_INTEGER

public static Keyword KWD_INTEGER

KWD_DELIMITER

public static Keyword KWD_DELIMITER

KWD_FRACTION

public static Keyword KWD_FRACTION

KWD_UNIT

public static Keyword KWD_UNIT

KWD_EOF

public static Keyword KWD_EOF

KWD_OTHERWISE

public static Keyword KWD_OTHERWISE

KWD_ERROR

public static Keyword KWD_ERROR

KWD_INCLUDE

public static Keyword KWD_INCLUDE

$UNIT_TOKENIZER_TABLE$

public static TokenizerTable $UNIT_TOKENIZER_TABLE$

SGT_UTILITIES_MEASURE

public static Surrogate SGT_UTILITIES_MEASURE

SYM_UTILITIES_BASE_UNIT

public static Symbol SYM_UTILITIES_BASE_UNIT

SYM_UTILITIES_SCALE

public static Symbol SYM_UTILITIES_SCALE

SYM_UTILITIES_PRIME_ID

public static Symbol SYM_UTILITIES_PRIME_ID

SYM_STELLA_NAME

public static Symbol SYM_STELLA_NAME

KWD_PRESERVE

public static Keyword KWD_PRESERVE

SGT_UTILITIES_DIM_NUMBER

public static Surrogate SGT_UTILITIES_DIM_NUMBER

SYM_UTILITIES_PID

public static Symbol SYM_UTILITIES_PID

SYM_UTILITIES_MAGNITUDE

public static Symbol SYM_UTILITIES_MAGNITUDE

SYM_UTILITIES_PREFERRED_UNITS

public static Symbol SYM_UTILITIES_PREFERRED_UNITS

KWD_DIGIT

public static Keyword KWD_DIGIT

SGT_STELLA_TIME_DURATION

public static Surrogate SGT_STELLA_TIME_DURATION

SYM_UTILITIES_STARTUP_UNITS

public static Symbol SYM_UTILITIES_STARTUP_UNITS

SYM_UTILITIES_STARTUP_UNIT_DEFS

public static Symbol SYM_UTILITIES_STARTUP_UNIT_DEFS

SYM_UTILITIES_STARTUP_UTILITIES_SYSTEM

public static Symbol SYM_UTILITIES_STARTUP_UTILITIES_SYSTEM
Constructor Detail

Utilities

public Utilities()
Method Detail

texinfoSpecialCharacterP

public static boolean texinfoSpecialCharacterP(char ch)

texinfoEscapeString

public static java.lang.String texinfoEscapeString(java.lang.String string)

yieldTexinfoTypeSpec

public static java.lang.String yieldTexinfoTypeSpec(Stella_Object typeSpec)

yieldTexinfoBareName

public static java.lang.String yieldTexinfoBareName(Stella_Object name)

yieldTexinfoParameterName

public static java.lang.String yieldTexinfoParameterName(java.lang.String name)

yieldTexinfoConstant

public static java.lang.String yieldTexinfoConstant(Symbol name)

texinfoGetParagraphCommand

public static java.lang.String texinfoGetParagraphCommand(java.lang.String string,
                                                          int start)

texinfoDescribeDocumentationString

public static void texinfoDescribeDocumentationString(Stella_Object renamed_Object,
                                                      java.lang.String documentation,
                                                      OutputStream stream,
                                                      List parameters)

texinfoDescribeVariable

public static void texinfoDescribeVariable(GlobalVariable variable,
                                           OutputStream stream)

texinfoDescribeClass

public static void texinfoDescribeClass(Stella_Class renamed_Class,
                                        OutputStream stream)

texinfoDescribeSlot

public static void texinfoDescribeSlot(StorageSlot slot,
                                       OutputStream stream)

texinfoGetRealMethodParameterNames

public static List texinfoGetRealMethodParameterNames(MethodSlot method)

texinfoGetRealMethodParametersAndTypes

public static List texinfoGetRealMethodParametersAndTypes(MethodSlot method,
                                                          java.lang.Object[] MV_returnarray)

texinfoDescribeMethod

public static void texinfoDescribeMethod(MethodSlot method,
                                         OutputStream stream)

texinfoDescribeTypeDeclaration

public static void texinfoDescribeTypeDeclaration(java.lang.String parameter,
                                                  StandardObject type,
                                                  java.lang.String modifier,
                                                  OutputStream stream)

texinfoDescribeUnimplementedObject

public static void texinfoDescribeUnimplementedObject(Stella_Object specification,
                                                      OutputStream stream)

registerDocumentedObject

public static void registerDocumentedObject(Stella_Object renamed_Object)

alreadyDocumentedObjectP

public static boolean alreadyDocumentedObjectP(Stella_Object renamed_Object)

clearDocumentedObjectsRegistry

public static void clearDocumentedObjectsRegistry()

lookupObjectFromSpecification

public static Stella_Object lookupObjectFromSpecification(Stella_Object specification)

texinfoObjectL

public static boolean texinfoObjectL(Stella_Object object1,
                                     Stella_Object object2)

manualDescribeUncategorizedObjects

public static void manualDescribeUncategorizedObjects(Module module,
                                                      OutputStream stream)

manualDescribeObject

public static void manualDescribeObject(Stella_Object renamed_Object,
                                        Stella_Object specification,
                                        OutputStream stream)

generateManual

public static void generateManual(Cons manualSpec)
Generate a TEXINFO file containing a list of documented commands. 'manual-spec' is a CONS list of entries, where each entry is of the following form:

(<filename> <object-spec1> <object-spec2> ... <object-specN>)

The objects specified by <object-spec>s will be documented in sequence onto file <filename>. An object spec can be a simple symbol to name a function, macro or variable, a dotted symbol to name a method or slot, a surrogate to name a class, or a string (pathname) to name a module. If a module is specified, all as yet undocumented objects in that module that have a documentation string defined will be documented (this is a catch-all option).

Parameters:
manualSpec -

generateManualFromTemplate

public static void generateManualFromTemplate(java.lang.String templatefile,
                                              java.lang.String outputfile)

manualExpandTemplateCommands

public static java.lang.String manualExpandTemplateCommands(java.lang.String line)

texinfoInsertDoc

public static void texinfoInsertDoc(Stella_Object spec)

texinfoInsertPreamble

public static void texinfoInsertPreamble()

ipower

public static int ipower(int x,
                         int exp)

resetMeasures

public static void resetMeasures()

unitToScaleFactorAndId

public static double unitToScaleFactorAndId(java.lang.String definition,
                                            java.lang.Object[] MV_returnarray)

computeMeasuresForInteger

public static Cons computeMeasuresForInteger(int value)

computeUnitsForInteger

public static java.lang.String computeUnitsForInteger(int value,
                                                      boolean negateExponentP)

timeDurationToDim

public static DimNumber timeDurationToDim(TimeDuration duration)
Converts the time duration duration to its equivalent value as dimensioned number. The default time unit will be used.

Parameters:
duration -
Returns:
DimNumber

dmsToDegrees

public static DimNumber dmsToDegrees(Cons l)
Converts a (Degree Minute Second) to decimal degrees.

Parameters:
l -
Returns:
DimNumber

hmsToHours

public static DimNumber hmsToHours(Cons l)
Converts a (Hour Minute Second) to decimal hours

Parameters:
l -
Returns:
DimNumber

showMeasures

public static void showMeasures()
Print all defined measures.


showMeasure

public static void showMeasure(java.lang.String measureName)
Print all units and scale factors for measure measureName.

Parameters:
measureName -

showMeasureEvaluatorWrapper

public static void showMeasureEvaluatorWrapper(Cons arguments)

initializeUnitDefinitions

public static void initializeUnitDefinitions()
Measure conversion factors. The ultimate source for the conversions are the following publications. NIST was normally followed unless a more precise value was found in MfM.

Sources: [NIST] Guide for the Use of the International System of Units (SI) U.S. Department of Commerce National Institute of Standards and Technology (NIST) NIST Special Publication 811, 1995 Edition http://physics.nist.gov/Document/sp811.pdf

[MfM] Richard A. Young and Thomas J. Glover Measure for Measure 1996. ISBN 1-889796-00-X (Blue Willow, Inc.; Littleton, Colorado, USA) http://www.bluewillow.com/