Package com.google.javascript.jscomp
Class JsMessageExtractor
- java.lang.Object
-
- com.google.javascript.jscomp.JsMessageExtractor
-
@GwtIncompatible("JsMessage.Builder") public final class JsMessageExtractor extends java.lang.Object
Extracts messages and message comments from JS code.Uses a special prefix (e.g.
MSG_
) to determine which variables are messages. Here are the recognized formats:var MSG_FOO = "foo"; var MSG_FOO_HELP = "this message is used for foo";
var MSG_BAR = function(a, b) { return a + " bar " + b; } var MSG_BAR_HELP = "the bar message";
This class enforces the policy that message variable names must be unique across all JS files.
-
-
Constructor Summary
Constructors Constructor Description JsMessageExtractor(JsMessage.IdGenerator idGenerator, JsMessage.Style style)
JsMessageExtractor(JsMessage.IdGenerator idGenerator, JsMessage.Style style, CompilerOptions options, boolean extractExternalMessages)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description java.util.Collection<JsMessage>
extractMessages(SourceFile... inputs)
Extracts JS messages from JavaScript code.java.util.Collection<JsMessage>
extractMessages(java.lang.Iterable<SourceFile> inputs)
Extracts JS messages from JavaScript code.
-
-
-
Constructor Detail
-
JsMessageExtractor
public JsMessageExtractor(JsMessage.IdGenerator idGenerator, JsMessage.Style style)
-
JsMessageExtractor
public JsMessageExtractor(JsMessage.IdGenerator idGenerator, JsMessage.Style style, CompilerOptions options, boolean extractExternalMessages)
-
-
Method Detail
-
extractMessages
public java.util.Collection<JsMessage> extractMessages(SourceFile... inputs) throws java.io.IOException
Extracts JS messages from JavaScript code.- Throws:
java.io.IOException
-
extractMessages
public java.util.Collection<JsMessage> extractMessages(java.lang.Iterable<SourceFile> inputs)
Extracts JS messages from JavaScript code.- Parameters:
inputs
- the JavaScript source code inputs- Returns:
- the extracted messages collection
- Throws:
java.lang.RuntimeException
- if there are problems parsing the JS code or the JS messages, or if two messages have the same key
-
-