Package sass.embedded_protocol
Class EmbeddedSass.OutboundMessage.CanonicalizeRequest
java.lang.Object
com.google.protobuf.AbstractMessageLite
com.google.protobuf.AbstractMessage
com.google.protobuf.GeneratedMessageV3
sass.embedded_protocol.EmbeddedSass.OutboundMessage.CanonicalizeRequest
- All Implemented Interfaces:
Message
,MessageLite
,MessageLiteOrBuilder
,MessageOrBuilder
,Serializable
,EmbeddedSass.OutboundMessage.CanonicalizeRequestOrBuilder
- Enclosing class:
- EmbeddedSass.OutboundMessage
public static final class EmbeddedSass.OutboundMessage.CanonicalizeRequest
extends GeneratedMessageV3
implements EmbeddedSass.OutboundMessage.CanonicalizeRequestOrBuilder
A request for a custom importer to convert an imported URL to its canonical format. If the URL is not recognized by this importer, or if no stylesheet is found at that URL, `CanonicalizeResponse.result` must be `null`. Otherwise, the importer must return an absolute URL, including a scheme. > The host's documentation should encourage the use of file importers (via > `CompileRequest.Importer.file_importer_id`, `FileImportRequest`, and > `FileImportResponse`) for any importers that simply refer to files on > disk. This will allow Sass to handle the logic of resolving partials, > file extensions, and index files. If Sass has already loaded a stylesheet with the returned canonical URL, it re-uses the existing parse tree. This means that importers must ensure that the same canonical URL always refers to the same stylesheet, *even across different importers*. Importers must also ensure that any canonicalized URLs they return can be passed back to `CanonicalizeRequest` and will be returned unchanged. If this importer's URL format supports file extensions, it should canonicalize them the same way as the default filesystem importer: * The importer should look for stylesheets by adding the prefix `_` to the URL's basename, and by adding the extensions `.sass` and `.scss` if the URL doesn't already have one of those extensions. For example, if the URL was `foo/bar/baz`, the importer would look for: * `foo/bar/baz.sass` * `foo/bar/baz.scss` * `foo/bar/_baz.sass` * `foo/bar/_baz.scss` If the URL was foo/bar/baz.scss, the importer would just look for: * `foo/bar/baz.scss` * `foo/bar/_baz.scss` If the importer finds a stylesheet at more than one of these URLs, it should respond with a `CanonicalizeResponse.result.error` indicating that the import is ambiguous. Note that if the extension is explicitly specified, a stylesheet with another extension may exist without error. * If none of the possible paths is valid, the importer should perform the same resolution on the URL followed by `/index`. In the example above, it would look for: * `foo/bar/baz/_index.sass` * `foo/bar/baz/index.sass` * `foo/bar/baz/_index.scss` * `foo/bar/baz/index.scss` As above, if the importer finds a stylesheet at more than one of these URLs, it should respond with a `CanonicalizeResponse.result.error` indicating that the import is ambiguous.Protobuf type
sass.embedded_protocol.OutboundMessage.CanonicalizeRequest
- See Also:
-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionstatic final class
A request for a custom importer to convert an imported URL to its canonical format.Nested classes/interfaces inherited from class com.google.protobuf.GeneratedMessageV3
GeneratedMessageV3.BuilderParent, GeneratedMessageV3.ExtendableBuilder<MessageT extends GeneratedMessageV3.ExtendableMessage<MessageT>,
BuilderT extends GeneratedMessageV3.ExtendableBuilder<MessageT, BuilderT>>, GeneratedMessageV3.ExtendableMessage<MessageT extends GeneratedMessageV3.ExtendableMessage<MessageT>>, GeneratedMessageV3.ExtendableMessageOrBuilder<MessageT extends GeneratedMessageV3.ExtendableMessage<MessageT>>, GeneratedMessageV3.FieldAccessorTable, GeneratedMessageV3.UnusedPrivateParameter Nested classes/interfaces inherited from class com.google.protobuf.AbstractMessageLite
AbstractMessageLite.InternalOneOfEnum
-
Field Summary
FieldsModifier and TypeFieldDescriptionstatic final int
static final int
static final int
static final int
static final int
Fields inherited from class com.google.protobuf.GeneratedMessageV3
alwaysUseFieldBuilders, unknownFields
Fields inherited from class com.google.protobuf.AbstractMessage
memoizedSize
Fields inherited from class com.google.protobuf.AbstractMessageLite
memoizedHashCode
-
Method Summary
Modifier and TypeMethodDescriptionboolean
int
The request id for the compilation that triggered the message.static final Descriptors.Descriptor
boolean
/ Whether this request comes from an `@import` rule.int
getId()
uint32 id = 1;
int
The unique ID of the importer being invoked.int
getUrl()
The URL of the import to be canonicalized.The URL of the import to be canonicalized.int
hashCode()
protected GeneratedMessageV3.FieldAccessorTable
final boolean
protected Object
parseDelimitedFrom
(InputStream input) parseDelimitedFrom
(InputStream input, ExtensionRegistryLite extensionRegistry) parseFrom
(byte[] data) parseFrom
(byte[] data, ExtensionRegistryLite extensionRegistry) parseFrom
(ByteString data) parseFrom
(ByteString data, ExtensionRegistryLite extensionRegistry) parseFrom
(CodedInputStream input) parseFrom
(CodedInputStream input, ExtensionRegistryLite extensionRegistry) parseFrom
(InputStream input) parseFrom
(InputStream input, ExtensionRegistryLite extensionRegistry) parseFrom
(ByteBuffer data) parseFrom
(ByteBuffer data, ExtensionRegistryLite extensionRegistry) parser()
void
writeTo
(CodedOutputStream output) Methods inherited from class com.google.protobuf.GeneratedMessageV3
canUseUnsafe, computeStringSize, computeStringSizeNoTag, emptyBooleanList, emptyDoubleList, emptyFloatList, emptyIntList, emptyLongList, getAllFields, getDescriptorForType, getField, getOneofFieldDescriptor, getRepeatedField, getRepeatedFieldCount, getUnknownFields, hasField, hasOneof, internalGetMapField, isStringEmpty, makeExtensionsImmutable, makeMutableCopy, mergeFromAndMakeImmutableInternal, mutableCopy, mutableCopy, mutableCopy, mutableCopy, mutableCopy, newBooleanList, newBuilderForType, newDoubleList, newFloatList, newIntList, newLongList, parseDelimitedWithIOException, parseDelimitedWithIOException, parseUnknownField, parseUnknownFieldProto3, parseWithIOException, parseWithIOException, parseWithIOException, parseWithIOException, serializeBooleanMapTo, serializeIntegerMapTo, serializeLongMapTo, serializeStringMapTo, writeReplace, writeString, writeStringNoTag
Methods inherited from class com.google.protobuf.AbstractMessage
findInitializationErrors, getInitializationErrorString, hashBoolean, hashEnum, hashEnumList, hashFields, hashLong, toString
Methods inherited from class com.google.protobuf.AbstractMessageLite
addAll, addAll, checkByteStringIsUtf8, toByteArray, toByteString, writeDelimitedTo, writeTo
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
Methods inherited from interface com.google.protobuf.MessageLite
toByteArray, toByteString, writeDelimitedTo, writeTo
Methods inherited from interface com.google.protobuf.MessageOrBuilder
findInitializationErrors, getAllFields, getDescriptorForType, getField, getInitializationErrorString, getOneofFieldDescriptor, getRepeatedField, getRepeatedFieldCount, getUnknownFields, hasField, hasOneof
-
Field Details
-
ID_FIELD_NUMBER
public static final int ID_FIELD_NUMBER- See Also:
-
COMPILATION_ID_FIELD_NUMBER
public static final int COMPILATION_ID_FIELD_NUMBER- See Also:
-
IMPORTER_ID_FIELD_NUMBER
public static final int IMPORTER_ID_FIELD_NUMBER- See Also:
-
URL_FIELD_NUMBER
public static final int URL_FIELD_NUMBER- See Also:
-
FROM_IMPORT_FIELD_NUMBER
public static final int FROM_IMPORT_FIELD_NUMBER- See Also:
-
-
Method Details
-
newInstance
- Overrides:
newInstance
in classGeneratedMessageV3
-
getDescriptor
-
internalGetFieldAccessorTable
- Specified by:
internalGetFieldAccessorTable
in classGeneratedMessageV3
-
getId
public int getId()uint32 id = 1;
- Specified by:
getId
in interfaceEmbeddedSass.OutboundMessage.CanonicalizeRequestOrBuilder
- Returns:
- The id.
-
getCompilationId
public int getCompilationId()The request id for the compilation that triggered the message. Mandatory.
uint32 compilation_id = 2;
- Specified by:
getCompilationId
in interfaceEmbeddedSass.OutboundMessage.CanonicalizeRequestOrBuilder
- Returns:
- The compilationId.
-
getImporterId
public int getImporterId()The unique ID of the importer being invoked. This must match an importer ID passed to this compilation in `CompileRequest.importers` or `CompileRequest.input.string.importer`. Mandatory.
uint32 importer_id = 3;
- Specified by:
getImporterId
in interfaceEmbeddedSass.OutboundMessage.CanonicalizeRequestOrBuilder
- Returns:
- The importerId.
-
getUrl
The URL of the import to be canonicalized. This may be either absolute or relative. When loading a URL, the compiler must first try resolving that URL relative to the canonical URL of the current file, and canonicalizing the result using the importer that loaded the current file. If this returns `null`, the compiler must then try canonicalizing the original URL with each importer in order until one returns something other than `null`. That is the result of the import.
string url = 4;
- Specified by:
getUrl
in interfaceEmbeddedSass.OutboundMessage.CanonicalizeRequestOrBuilder
- Returns:
- The url.
-
getUrlBytes
The URL of the import to be canonicalized. This may be either absolute or relative. When loading a URL, the compiler must first try resolving that URL relative to the canonical URL of the current file, and canonicalizing the result using the importer that loaded the current file. If this returns `null`, the compiler must then try canonicalizing the original URL with each importer in order until one returns something other than `null`. That is the result of the import.
string url = 4;
- Specified by:
getUrlBytes
in interfaceEmbeddedSass.OutboundMessage.CanonicalizeRequestOrBuilder
- Returns:
- The bytes for url.
-
getFromImport
public boolean getFromImport()/ Whether this request comes from an `@import` rule. / / When evaluating `@import` rules, URLs should canonicalize to an / [import-only file] if one exists for the URL being canonicalized. / Otherwise, canonicalization should be identical for `@import` and `@use` / rules. / / [import-only file]: https://sass-lang.com/documentation/at-rules/import#import-only-files
bool from_import = 5;
- Specified by:
getFromImport
in interfaceEmbeddedSass.OutboundMessage.CanonicalizeRequestOrBuilder
- Returns:
- The fromImport.
-
isInitialized
public final boolean isInitialized()- Specified by:
isInitialized
in interfaceMessageLiteOrBuilder
- Overrides:
isInitialized
in classGeneratedMessageV3
-
writeTo
- Specified by:
writeTo
in interfaceMessageLite
- Overrides:
writeTo
in classGeneratedMessageV3
- Throws:
IOException
-
getSerializedSize
public int getSerializedSize()- Specified by:
getSerializedSize
in interfaceMessageLite
- Overrides:
getSerializedSize
in classGeneratedMessageV3
-
equals
- Specified by:
equals
in interfaceMessage
- Overrides:
equals
in classAbstractMessage
-
hashCode
public int hashCode()- Specified by:
hashCode
in interfaceMessage
- Overrides:
hashCode
in classAbstractMessage
-
parseFrom
public static EmbeddedSass.OutboundMessage.CanonicalizeRequest parseFrom(ByteBuffer data) throws InvalidProtocolBufferException - Throws:
InvalidProtocolBufferException
-
parseFrom
public static EmbeddedSass.OutboundMessage.CanonicalizeRequest parseFrom(ByteBuffer data, ExtensionRegistryLite extensionRegistry) throws InvalidProtocolBufferException - Throws:
InvalidProtocolBufferException
-
parseFrom
public static EmbeddedSass.OutboundMessage.CanonicalizeRequest parseFrom(ByteString data) throws InvalidProtocolBufferException - Throws:
InvalidProtocolBufferException
-
parseFrom
public static EmbeddedSass.OutboundMessage.CanonicalizeRequest parseFrom(ByteString data, ExtensionRegistryLite extensionRegistry) throws InvalidProtocolBufferException - Throws:
InvalidProtocolBufferException
-
parseFrom
public static EmbeddedSass.OutboundMessage.CanonicalizeRequest parseFrom(byte[] data) throws InvalidProtocolBufferException - Throws:
InvalidProtocolBufferException
-
parseFrom
public static EmbeddedSass.OutboundMessage.CanonicalizeRequest parseFrom(byte[] data, ExtensionRegistryLite extensionRegistry) throws InvalidProtocolBufferException - Throws:
InvalidProtocolBufferException
-
parseFrom
public static EmbeddedSass.OutboundMessage.CanonicalizeRequest parseFrom(InputStream input) throws IOException - Throws:
IOException
-
parseFrom
public static EmbeddedSass.OutboundMessage.CanonicalizeRequest parseFrom(InputStream input, ExtensionRegistryLite extensionRegistry) throws IOException - Throws:
IOException
-
parseDelimitedFrom
public static EmbeddedSass.OutboundMessage.CanonicalizeRequest parseDelimitedFrom(InputStream input) throws IOException - Throws:
IOException
-
parseDelimitedFrom
public static EmbeddedSass.OutboundMessage.CanonicalizeRequest parseDelimitedFrom(InputStream input, ExtensionRegistryLite extensionRegistry) throws IOException - Throws:
IOException
-
parseFrom
public static EmbeddedSass.OutboundMessage.CanonicalizeRequest parseFrom(CodedInputStream input) throws IOException - Throws:
IOException
-
parseFrom
public static EmbeddedSass.OutboundMessage.CanonicalizeRequest parseFrom(CodedInputStream input, ExtensionRegistryLite extensionRegistry) throws IOException - Throws:
IOException
-
newBuilderForType
- Specified by:
newBuilderForType
in interfaceMessage
- Specified by:
newBuilderForType
in interfaceMessageLite
-
newBuilder
-
newBuilder
public static EmbeddedSass.OutboundMessage.CanonicalizeRequest.Builder newBuilder(EmbeddedSass.OutboundMessage.CanonicalizeRequest prototype) -
toBuilder
- Specified by:
toBuilder
in interfaceMessage
- Specified by:
toBuilder
in interfaceMessageLite
-
newBuilderForType
protected EmbeddedSass.OutboundMessage.CanonicalizeRequest.Builder newBuilderForType(GeneratedMessageV3.BuilderParent parent) - Specified by:
newBuilderForType
in classGeneratedMessageV3
-
getDefaultInstance
-
parser
-
getParserForType
- Specified by:
getParserForType
in interfaceMessage
- Specified by:
getParserForType
in interfaceMessageLite
- Overrides:
getParserForType
in classGeneratedMessageV3
-
getDefaultInstanceForType
- Specified by:
getDefaultInstanceForType
in interfaceMessageLiteOrBuilder
- Specified by:
getDefaultInstanceForType
in interfaceMessageOrBuilder
-