diff options
author | 2018-02-11 09:23:55 -0800 | |
---|---|---|
committer | 2018-02-11 09:25:41 -0800 | |
commit | e45c0555cfb15ce403ff2f447edb74495a633ec1 (patch) | |
tree | 28c7a697306b91d00a49602b991aea9476c65892 /src/main/java/com/google/devtools/build/lib/packages/SkylarkSemanticsCodec.java | |
parent | e3bbfdb839a483f1a418a94d857c25794006fbe0 (diff) |
Add context argument to ObjectCodec.{serialize,deserialize}
Context implementations are currently empty, just doing the plumbing in this
change. Once this is in we can start passing along the ObjectCodecRegistry, which
will allow runtime codec resolution for classes not known at compile time.
We'll also inevitably add some memoization helpers, allowing us to optimize the
serialization process further.
PiperOrigin-RevId: 185305674
Diffstat (limited to 'src/main/java/com/google/devtools/build/lib/packages/SkylarkSemanticsCodec.java')
-rw-r--r-- | src/main/java/com/google/devtools/build/lib/packages/SkylarkSemanticsCodec.java | 7 |
1 files changed, 5 insertions, 2 deletions
diff --git a/src/main/java/com/google/devtools/build/lib/packages/SkylarkSemanticsCodec.java b/src/main/java/com/google/devtools/build/lib/packages/SkylarkSemanticsCodec.java index fe7e4d9a38..249bc91c4c 100644 --- a/src/main/java/com/google/devtools/build/lib/packages/SkylarkSemanticsCodec.java +++ b/src/main/java/com/google/devtools/build/lib/packages/SkylarkSemanticsCodec.java @@ -14,7 +14,9 @@ package com.google.devtools.build.lib.packages; +import com.google.devtools.build.lib.skyframe.serialization.DeserializationContext; import com.google.devtools.build.lib.skyframe.serialization.ObjectCodec; +import com.google.devtools.build.lib.skyframe.serialization.SerializationContext; import com.google.devtools.build.lib.skyframe.serialization.SerializationException; import com.google.devtools.build.lib.syntax.SkylarkSemantics; import com.google.protobuf.CodedInputStream; @@ -37,7 +39,8 @@ public final class SkylarkSemanticsCodec implements ObjectCodec<SkylarkSemantics } @Override - public void serialize(SkylarkSemantics semantics, CodedOutputStream codedOut) + public void serialize( + SerializationContext context, SkylarkSemantics semantics, CodedOutputStream codedOut) throws SerializationException, IOException { // <== Add new options here in alphabetic order ==> codedOut.writeBoolNoTag(semantics.incompatibleBzlDisallowLoadAfterStatement()); @@ -59,7 +62,7 @@ public final class SkylarkSemanticsCodec implements ObjectCodec<SkylarkSemantics } @Override - public SkylarkSemantics deserialize(CodedInputStream codedIn) + public SkylarkSemantics deserialize(DeserializationContext context, CodedInputStream codedIn) throws SerializationException, IOException { SkylarkSemantics.Builder builder = SkylarkSemantics.builder(); |