Package com.google.javascript.rhino
Class JSDocInfoBuilder
- java.lang.Object
-
- com.google.javascript.rhino.JSDocInfoBuilder
-
public final class JSDocInfoBuilder extends java.lang.Object
-
-
Constructor Summary
Constructors Constructor Description JSDocInfoBuilder(boolean parseDocumentation)
-
Method Summary
All Methods Instance Methods Concrete Methods Deprecated Methods Modifier and Type Method Description booleanaddAuthor(java.lang.String author)Adds an author to the current information.booleanaddReference(java.lang.String reference)Adds a reference ("@see") to the current information.JSDocInfobuild(Node associatedNode)Builds aJSDocInfoobject based on the populated information and returns it.booleanhasParameter(java.lang.String name)booleanisConstructorRecorded()booleanisDescriptionRecorded()Returns whether this builder recorded a description.booleanisInterfaceRecorded()booleanisJavaDispatch()booleanisNgInjectRecorded()Returns whether current JSDoc is annotated with@ngInject.booleanisPopulated()Returns whether this builder is populated with information that can be used tobuild(com.google.javascript.rhino.Node)aJSDocInfoobject.booleanisPopulatedWithFileOverview()Returns whether this builder is populated with information that can be used tobuild(com.google.javascript.rhino.Node)aJSDocInfoobject that has a fileoverview tag.voidmarkAnnotation(java.lang.String annotation, int lineno, int charno)Adds a marker to the current JSDocInfo and populates the marker with the annotation information.voidmarkName(java.lang.String name, int lineno, int charno)Deprecated.Use #markName(String, StaticSourceFile, int, int)voidmarkName(java.lang.String name, StaticSourceFile file, int lineno, int charno)Adds a name declaration to the current marker.voidmarkText(java.lang.String text, int startLineno, int startCharno, int endLineno, int endCharno)Adds a textual block to the current marker.voidmarkTypeNode(Node typeNode, int lineno, int startCharno, int endLineno, int endCharno, boolean hasLC)Adds a type declaration to the current marker.booleanrecordBaseType(JSTypeExpression jsType)Records a base type.booleanrecordBlockDescription(java.lang.String description)Records a block-level description.booleanrecordClassTemplateTypeNames(java.util.List<java.lang.String> names)Records a template type name.booleanrecordConsistentIdGenerator()Records that theJSDocInfobeing built should have itsJSDocInfo.isConsistentIdGenerator()flag set totrue.booleanrecordConstancy()booleanrecordConstructor()booleanrecordDefineType(JSTypeExpression type)Records the type of a define.booleanrecordDeprecated()booleanrecordDeprecationReason(java.lang.String reason)Records the deprecation reason.booleanrecordDescription(java.lang.String description)Records a description giving context for translation (i18n).booleanrecordDict()booleanrecordEnumParameterType(JSTypeExpression type)Records a parameter type to an enum.booleanrecordExport()booleanrecordExpose()booleanrecordExtendedInterface(JSTypeExpression interfaceType)Records an extended interface type.booleanrecordExterns()booleanrecordFileOverview(java.lang.String description)Records a fileoverview description.booleanrecordHiddenness()booleanrecordIdGenerator()booleanrecordImplementedInterface(JSTypeExpression interfaceName)Records an implemented interface.booleanrecordImplicitCast()booleanrecordInterface()booleanrecordJavaDispatch()booleanrecordLends(java.lang.String name)Records that we're lending to another name.booleanrecordMeaning(java.lang.String meaning)Records a meaning giving context for translation (i18n).booleanrecordModifies(java.util.Set<java.lang.String> modifies)Records the list of modifies warnings.booleanrecordNgInject(boolean ngInject)Records that we'd like to add$injectproperty inferred from parameters.booleanrecordNoAlias()booleanrecordNoCompile()booleanrecordNoShadow()booleanrecordNoSideEffects()Records that theJSDocInfobeing built should have itsJSDocInfo.isNoSideEffects()flag set totrue.booleanrecordNoTypeCheck()voidrecordOriginalCommentString(java.lang.String sourceComment)Sets the original JSDoc comment string.booleanrecordOverride()booleanrecordParameter(java.lang.String parameterName, JSTypeExpression type)Records a typed parameter.booleanrecordParameterDescription(java.lang.String parameterName, java.lang.String description)Records a parameter's description.booleanrecordPreserveTry()Records that theJSDocInfobeing built should have itsJSDocInfo.shouldPreserveTry()flag set totrue.booleanrecordReturnDescription(java.lang.String description)Records a return descriptionbooleanrecordReturnType(JSTypeExpression jsType)Records a return type.booleanrecordStableIdGenerator()Records that theJSDocInfobeing built should have itsJSDocInfo.isStableIdGenerator()flag set totrue.booleanrecordStruct()booleanrecordSuppressions(java.util.Set<java.lang.String> suppressions)Records the list of suppressed warnings.booleanrecordTemplateTypeNames(java.util.List<java.lang.String> names)Records a template type name.booleanrecordThisType(JSTypeExpression type)Records a type for@thisannotation.booleanrecordThrowDescription(JSTypeExpression type, java.lang.String description)Records a throw type's description.booleanrecordThrowType(JSTypeExpression type)Records a thrown type.booleanrecordType(JSTypeExpression type)Records a type.booleanrecordTypedef(JSTypeExpression type)Records that theJSDocInfobeing built should be populated with atypedef'd type.booleanrecordVersion(java.lang.String version)Records the version.booleanrecordVisibility(JSDocInfo.Visibility visibility)Records a visibility.booleanshouldParseDocumentation()
-
-
-
Method Detail
-
recordOriginalCommentString
public void recordOriginalCommentString(java.lang.String sourceComment)
Sets the original JSDoc comment string. This is a no-op if the builder isn't configured to record documentation.
-
shouldParseDocumentation
public boolean shouldParseDocumentation()
-
isPopulated
public boolean isPopulated()
Returns whether this builder is populated with information that can be used tobuild(com.google.javascript.rhino.Node)aJSDocInfoobject.
-
isPopulatedWithFileOverview
public boolean isPopulatedWithFileOverview()
Returns whether this builder is populated with information that can be used tobuild(com.google.javascript.rhino.Node)aJSDocInfoobject that has a fileoverview tag.
-
isDescriptionRecorded
public boolean isDescriptionRecorded()
Returns whether this builder recorded a description.
-
build
public JSDocInfo build(Node associatedNode)
Builds aJSDocInfoobject based on the populated information and returns it. Once this method is called, the builder can be reused to build anotherJSDocInfoobject.- Parameters:
associatedNode- The source node containing the JSDoc.- Returns:
- a
JSDocInfoobject populated with the values given to this builder. If no value was populated, this method simply returnsnull
-
markAnnotation
public void markAnnotation(java.lang.String annotation, int lineno, int charno)Adds a marker to the current JSDocInfo and populates the marker with the annotation information.
-
markText
public void markText(java.lang.String text, int startLineno, int startCharno, int endLineno, int endCharno)Adds a textual block to the current marker.
-
markTypeNode
public void markTypeNode(Node typeNode, int lineno, int startCharno, int endLineno, int endCharno, boolean hasLC)
Adds a type declaration to the current marker.
-
markName
@Deprecated public void markName(java.lang.String name, int lineno, int charno)Deprecated.Use #markName(String, StaticSourceFile, int, int)Adds a name declaration to the current marker.
-
markName
public void markName(java.lang.String name, StaticSourceFile file, int lineno, int charno)Adds a name declaration to the current marker.
-
recordBlockDescription
public boolean recordBlockDescription(java.lang.String description)
Records a block-level description.- Returns:
trueif the description was recorded.
-
recordVisibility
public boolean recordVisibility(JSDocInfo.Visibility visibility)
Records a visibility.- Returns:
trueif the visibility was recorded andfalseif it was already defined
-
recordParameter
public boolean recordParameter(java.lang.String parameterName, JSTypeExpression type)Records a typed parameter.- Returns:
trueif the typed parameter was recorded andfalseif a parameter with the same name was already defined
-
recordParameterDescription
public boolean recordParameterDescription(java.lang.String parameterName, java.lang.String description)Records a parameter's description.- Returns:
trueif the parameter's description was recorded andfalseif a parameter with the same name was already defined
-
recordTemplateTypeNames
public boolean recordTemplateTypeNames(java.util.List<java.lang.String> names)
Records a template type name.- Returns:
trueif the template type name was recorded andfalseif a template type name was already defined.
-
recordClassTemplateTypeNames
public boolean recordClassTemplateTypeNames(java.util.List<java.lang.String> names)
Records a template type name.- Returns:
trueif the template type name was recorded andfalseif a template type name was already defined.
-
recordThrowType
public boolean recordThrowType(JSTypeExpression type)
Records a thrown type.
-
recordThrowDescription
public boolean recordThrowDescription(JSTypeExpression type, java.lang.String description)
Records a throw type's description.- Returns:
trueif the type's description was recorded andfalseif a description with the same type was already defined
-
addAuthor
public boolean addAuthor(java.lang.String author)
Adds an author to the current information.
-
addReference
public boolean addReference(java.lang.String reference)
Adds a reference ("@see") to the current information.
-
recordConsistentIdGenerator
public boolean recordConsistentIdGenerator()
Records that theJSDocInfobeing built should have itsJSDocInfo.isConsistentIdGenerator()flag set totrue.- Returns:
trueif the consistentIdGenerator flag was recorded andfalseif it was already recorded
-
recordStableIdGenerator
public boolean recordStableIdGenerator()
Records that theJSDocInfobeing built should have itsJSDocInfo.isStableIdGenerator()flag set totrue.- Returns:
trueif the stableIdGenerator flag was recorded andfalseif it was already recorded.
-
recordVersion
public boolean recordVersion(java.lang.String version)
Records the version.
-
recordDeprecationReason
public boolean recordDeprecationReason(java.lang.String reason)
Records the deprecation reason.
-
recordSuppressions
public boolean recordSuppressions(java.util.Set<java.lang.String> suppressions)
Records the list of suppressed warnings.
-
recordModifies
public boolean recordModifies(java.util.Set<java.lang.String> modifies)
Records the list of modifies warnings.
-
recordType
public boolean recordType(JSTypeExpression type)
Records a type.- Returns:
trueif the type was recorded andfalseif it is invalid or was already defined
-
recordTypedef
public boolean recordTypedef(JSTypeExpression type)
Records that theJSDocInfobeing built should be populated with atypedef'd type.
-
recordIdGenerator
public boolean recordIdGenerator()
- Returns:
trueif the idGenerator flag was recorded andfalseif it was already recorded
-
recordReturnType
public boolean recordReturnType(JSTypeExpression jsType)
Records a return type.- Returns:
trueif the return type was recorded andfalseif it is invalid or was already defined
-
recordReturnDescription
public boolean recordReturnDescription(java.lang.String description)
Records a return description- Returns:
trueif the return description was recorded andfalseif it is invalid or was already defined
-
recordDefineType
public boolean recordDefineType(JSTypeExpression type)
Records the type of a define. 'Define' values are special constants that may be manipulated by the compiler. They are designed to mimic the #define command in the C preprocessor.
-
recordEnumParameterType
public boolean recordEnumParameterType(JSTypeExpression type)
Records a parameter type to an enum.- Returns:
trueif the enum's parameter type was recorded andfalseif it was invalid or already defined
-
recordThisType
public boolean recordThisType(JSTypeExpression type)
Records a type for@thisannotation.- Returns:
trueif the type was recorded andfalseif it is invalid or if it collided with@enumor@typeannotations
-
recordBaseType
public boolean recordBaseType(JSTypeExpression jsType)
Records a base type.- Returns:
trueif the base type was recorded andfalseif it was already defined
-
recordConstancy
public boolean recordConstancy()
- Returns:
trueif the constancy was recorded andfalseif it was already defined
-
recordDescription
public boolean recordDescription(java.lang.String description)
Records a description giving context for translation (i18n).- Returns:
trueif the description was recorded andfalseif the description was invalid or was already defined
-
recordMeaning
public boolean recordMeaning(java.lang.String meaning)
Records a meaning giving context for translation (i18n). Different meanings will result in different translations.- Returns:
trueIf the meaning was successfully updated.
-
recordFileOverview
public boolean recordFileOverview(java.lang.String description)
Records a fileoverview description.- Returns:
trueif the description was recorded andfalseif the description was invalid or was already defined.
-
recordHiddenness
public boolean recordHiddenness()
- Returns:
trueif the hiddenness was recorded andfalseif it was already defined
-
recordNoCompile
public boolean recordNoCompile()
- Returns:
trueif the no compile flag was recorded andfalseif it was already recorded
-
recordNoTypeCheck
public boolean recordNoTypeCheck()
- Returns:
trueif the no check flag was recorded andfalseif it was already recorded
-
recordConstructor
public boolean recordConstructor()
- Returns:
trueif the constructor was recorded andfalseif it was already defined or it was incompatible with the existing flags
-
isConstructorRecorded
public boolean isConstructorRecorded()
-
recordStruct
public boolean recordStruct()
- Returns:
trueif the struct was recorded andfalseif it was already defined or it was incompatible with the existing flags
-
recordDict
public boolean recordDict()
- Returns:
trueif the dict was recorded andfalseif it was already defined or it was incompatible with the existing flags
-
recordJavaDispatch
public boolean recordJavaDispatch()
- Returns:
trueif the javadispatch was recorded andfalseif it was already defined or it was incompatible with the existing flags
-
isJavaDispatch
public boolean isJavaDispatch()
-
recordPreserveTry
public boolean recordPreserveTry()
Records that theJSDocInfobeing built should have itsJSDocInfo.shouldPreserveTry()flag set totrue.
-
recordOverride
public boolean recordOverride()
-
recordNoAlias
public boolean recordNoAlias()
-
recordDeprecated
public boolean recordDeprecated()
-
recordInterface
public boolean recordInterface()
- Returns:
trueif the flag was recorded andfalseif it was already defined or it was incompatible with the existing flags
-
recordExport
public boolean recordExport()
-
recordExpose
public boolean recordExpose()
-
recordNoShadow
public boolean recordNoShadow()
-
recordImplicitCast
public boolean recordImplicitCast()
-
recordNoSideEffects
public boolean recordNoSideEffects()
Records that theJSDocInfobeing built should have itsJSDocInfo.isNoSideEffects()flag set totrue.
-
recordExterns
public boolean recordExterns()
-
isInterfaceRecorded
public boolean isInterfaceRecorded()
-
hasParameter
public boolean hasParameter(java.lang.String name)
- Returns:
- Whether a parameter of the given name has already been recorded.
-
recordImplementedInterface
public boolean recordImplementedInterface(JSTypeExpression interfaceName)
Records an implemented interface.
-
recordExtendedInterface
public boolean recordExtendedInterface(JSTypeExpression interfaceType)
Records an extended interface type.
-
recordLends
public boolean recordLends(java.lang.String name)
Records that we're lending to another name.
-
isNgInjectRecorded
public boolean isNgInjectRecorded()
Returns whether current JSDoc is annotated with@ngInject.
-
recordNgInject
public boolean recordNgInject(boolean ngInject)
Records that we'd like to add$injectproperty inferred from parameters.
-
-